個人的なまとめ。

てきとーに何か書きます。

悩み事は筋肉が解決してくれるらしい-6月編

タイトルのような文言をよくTwitterで見るようになりましたが、個人的には筋肉が付きにくい体質なのでどうでも良いです。

ただ、この頃周りから「ちょっと太った?」とか、「大学に入った時はもっと痩せてたのにねー」といった言葉を周りの学生やら大学の職員さんから言われるようになったので、意地で「そこまで言うなら痩せてやろうじゃないか」と思いたった訳です。

とまぁ、確かに大学に入ってから殆ど運動という運動をしていなかった訳なので、そりゃあ食った分が全部溜まっていく訳ですよ。
しかし、体重はBMI指数も日本人の平均と照らし合わせてみても、標準に入ってるのでそこまでヤバいっていう訳じゃないんですけどね。ただ、痩せている時の自分を知っている人からすると、太ったと思われるんだろうなぁと。

続きを読む

slack APIの使い方

他のサイトだといまいち使い方が分からなかったので、自分用に記載しておく。

api.slack.com


chat.postMessage method | Slack

例えば、chat.postMessageを使用する場合は、FactsのMethod URLに色々とパラメータを付加してく。

https://slack.com/api/chat.postMessage?token=YOUR_TOKEN&channel=YOUR_CHANNEL_ID&text="Hello, World!"

とやれば、とりあえず指定したチャンネルに書き込む事が出来る。

Tokenは、Legacy Tokenを使用した。簡単に取得出来るので、とりあえずはこれで。
今は別の新しいやつが有るらしいので、そっちを使うのがベストっぽい。

$_SESSIONでページ遷移の時にもデータを保持する

phpで$_SESSION関数を使用して、ページング(ページ遷移)の時にもデータを保持したい。

ローカルでは、

<?php
    session_start();
?>

が必要だが、レンタルサーバー等にアップする場合には、session.auto_startが有効になっている場合は、不要です
もちろん、ローカルでもphp.iniでsession.auto_startが有効であれば不要です。

ちなみに、自分はこのsession.auto_startが有効になっている事に気づかずに、session_start();を書いてたせいで上手く動作しませんでした。

<?php
    $_SESSION['keyword'] = "音楽";
?>

とかやれば、$_SESSION['keyword']に"音楽"が代入されます。
$_SESSIONは、ブラウザが閉じられるまでデータを保持するので、途中でデータを消したい場合は、

<?php
    $_SESSION['keyword'] = "";
    $_SESSION['keyword'] = array();
    unset($_SESSION['keyword']);
?>

以上はどれも同じなので、好きなやつを使えばいいかな、と。
個人的には, = ""のやつを使ってます。

PHPで今日の日付に1日足す

例えば、2018年6月6日から2018年6月7日までの期間に絞ってデータを抽出したい時があるとする。

<?php
    $objDateTime = new DataTime('NOW');
    echo $objDateTime->format('Y-m-d');
?>

と実行すると、

2018-06-06

という風に値が得られる。

ので、ここに1日を足そうと思う。

<?php
    $objDateTime = new DataTime('NOW');
    echo $objDateTime->modify('+1 days')->format('Y-m-d');
?>

という風にするだけ。
勿論、echoの部分を$nextDay等適当に変数を付けてあげれば、使いやすいと思う。

今回はNOWではなく、入力したフォームの日付をGETで取得し、それに1日を追加したがやり方は同じ。

<?php
    $objDateTime = new DataTime($_GET['date']);
    echo $objDateTime->modify('+1 days')->format('Y-m-d');
?>

という風にするだけで、GETで取得したname=dateの値に1日追加する事ができる。

簡易的に足すのであれば、

<?php
    $nextDay = ++$_GET['date'];
?>

でも問題はない。ただこれだと、1日しか追加出来ないし、31日とか月末を指定された場合はエラーがでるので、上記の方法でやるのがベストだと思う。

IFTTTのWebhooksをphpで使う

昔から知ってて気になってたIFTTTを使ってみた。
実際、どう使えばいいのかいまいち分かってないけど、とにかく便利らしい。

Webhooksは自分で作成したアプリやWebなどに埋め込んで、URLにPOSTかGETで投げることで、動作を行う事ができるやつ。

<?php
$name = 'Sample';

$json_data = array(
    'value1' => $name,
);

$URL = "http://maker.ifttt.com/trigger/{EVENT_NAME}/with/key";
$URL .= $YOUR_KEY;

$options = array(
    'http' => array(
        'method' => 'POST',
        'header' => 'Content-Type: application/json',
        'content' => json_encode($json_data),
    )
);
file_get_contents($URL, false, stream_context_create($options));
?>

以上で出来る。file_get_contentsは使わない方が良いって書いてある記事もあったけど、とりあえずはこれで。curlを使うのがベストらしい。

$json_dataの配列の中のkeyは、IFTTTで設定をしたkeyと揃えると良い。
この画像の場合だと、$json_data = array( 'value1' => $name ); とかしてあげれば良い。
f:id:kosuke128:20180528193653p:plain

スマホの方でIFTTTのアプリを入れておけば、そっちに通知が行く。
使い道はイマイチ思いつかないけど、とりあえず使えるようになった。