PC・ガジェット今回の記事ではPHPのインストールと動作確認、ちょっとしたコーディングを行います。PHPでサーバー側の処理を記述して、ApacheでWEBページを配信という形になります。Pi上にインストールされている必要があります。自動的にやってくれない(気がします)。インストール以下のコマンドでインストール。いったものの導入が簡単かなーと思います。逆に設定ファイルどこ行った!?とかなることが往々にしてあるますが。php2018年現段階でインストールされるPHPは7系。拘りも無いので最新のを使いましょう。phpなどでパスが通っているかも確認しましょう。変数などの基本的なPHPのお約束についてはQiitaなどを参考にしていただければわかりやすいかと思います。phpinfo()サーバーの情報を表示するためのページを作成しましょう。デバッグや環境の確認に使用されます。Apacheのドキュメントルート(デフォルトは/var/www/html/)にて、ファイルを作成します。いままでtest.htmlなどのファイルを作成していた場所と同じです。今回のファイル名(アクセスするページのURLにもなります)はserver_info.phpにしておきます。拡張子は今までの.htmlではなく.phpになっている点に注意してください!テキストエディタを開いて以下の内容を記述してください。?>保存してから、http://[RaspiのIPアドレス]/server_info.phpにアクセスしてみてください。以下のような画面になると思います。Dateやらの情報が表示されます。サーバー(Raspi)とクライアント(アクセスしているPCやブラウザ等)の情報を拾い上げてHTML形式で出力してくれます。OSのバージョンなどを表示するなかなか強力な情報なので他人のアクセスできる環境下ではこのページを表示できるようにしないべきです。server_info.phpで削除しましょう。ブラウザによって表示する内容を変更するPHPの持っている変数を使って、アクセスしたブラウザによって表示する内容を変更するページを作成します。現在稼働しているサーバーの情報やアクセスしたブラウザ(クライアント)の情報が格納されています。先程のinfo()で表示される内容にもこの変数の中の値が表示されていました。スマホ用のページを表示するかを決めているようです。一度$_SERVERの値をすべて表示してみましょう。ファイル名をphp_test.phpとして以下の内容で作成してください。?>と最後にクエスチョンとブラケットでくくる必要がありますが、PHPの処理のみの場合省略できます。HTMLと一緒に書く場合はしっかりとタグを閉じてあげないとエラーとなります。var_dump()は、引数に指定した変数の内容を見やすくHTML形式で出力してくれるfunctionです。多重な配列もいい感じに表示してくれるので変数の内容がどうなっているかを確認するデバッグ作業に役立ちます。http://192.168.xxx.xxx/php_test.phpにアクセスしてみるとズラズラと何か表示されていると思います。ページ上で右クリックしてソースの表示をクリックしてみてください。その中のHTTP_USER_ARGENTという入れ物にページにアクセスしたクライアントの情報が入っています。Safari/537.36"と表示されます。Chrome(Chromium?)らしいです。Windows版SleipnirではSleipnirという情報が付加されるのですが。(笑)この情報利用して処理を分岐させます。正規表現で検索します。このfunctionは検索したい文字列が1回でもヒットすればtrueを返します。"あなたのブラウザはChromeです。//Chrome以外の場合の処理}とすればChrome(Sleipnir)でアクセスした場合のみの処理を実装可能です。弄って最終的にはこのような感じにしました。<p>あなたのブラウザは、<b><?=$browser?></b>です。<p></html>これでアクセスしてみると、ブラウザに応じて表示される内容が変わります。Safari以外のブラウザからアクセスすると不明と表示されます。"HTTP_USER_AGENT");$user_agentという変数に$_SERVER["HTTP_USER_AGENT"]の値を代入します。フィルター(ゲッター)を通して取得します。$user_agent))先程紹介した正規表現で検索するfunctionでIF分岐しています。指定する必要があります。つけないとエラーとなり怒られます。chromeの前後についているスラッシュがそれです。検索したい文字列の最後についているiは大文字小文字関係なく検索するための修飾子です。指定しない場合”chrome”で検索したときに"Chrome"という文字列があってもヒットしなくなります。<p>あなたのブラウザは、<b><?=$browser?></b>です。<p>HTMLのコードの中にPHPのコードが埋め込まれています。?>と同じ意味になります。単純に文字数を減らすことができます。echoは後ろに指定した文字列を出力する機能です。?>ということになります。それをHTMLの<p>タグの中に忍び込ませることによって表示内容の一部を環境などに応じて動的に変更することができます。受け取っているだけです。有効化/無効化の切り替えられるものと異なり、必ず(サーバー側で)実行されます。PHPに関する処理は一切表示されません。(インデントがおかしかったりするなど痕跡が残る場合もあります。)一方でjavascriptのようにボタンを押したらある処理が走る、といったことを素のPHPではページの更新無しでは実装できないです。以上で今回は終了です。簡単にできると思いますのでお楽しみに。肝心要のIRKitは生産終了状態なようです。Remoは価格がくそ高いので、なんだかなああという感じです。miniという製品が価格もIRKitと同じぐらいで使えそうです。正式なサポートはありませんが、Nodejsのライブラリでできそうなのですが、実際に試していません。見る次の記事Bootstrapを使ったサイトの作成です。Stadia発表についてちょっとしたまとめこんにちは、たねやつです。半日ほど前にGoogleから新たなゲー...2019-03-16【Node.js】foreverコマンドの基本的な使い方まとめ(過去に書いた記事を大きく修正してまとめなおしたものです。自作キーボードについていろいろ書いています。84を2年ほど使ってみた感想・打鍵音など。2019-12-14はてなブログの埋め込みコードの配色(背景・文字色)を自由に変更する2019-12-11イルミナイト万博(2019)行ってきました。背景を元に戻すAdはてなブログをはじめよう!ibuquicalligさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。