phpその1(DEC) > phpその2(DEC)> php10days

第2日 PHPプロトコル

1時限目:クエリ情報の活用
2時限目:ヘッダ情報
3時限目:クッキー情報の活用
ユーザからのリクエスト情報には、さまざまな情報が含まれています。フォーム経由で発信される「ポストデータ」の他、クエリ情報、ヘッタ情報、クッキー情報など、これら豊富なリクエスト情報と連携することで、よりきめ細やかに、インタラクティブなアプリケーションを構築できるようになる。さまざまなリクエスト情報を取得し、PHPスクリプトの中で活用する方法について考えてみます。

◆◆◆◆まとめ(1時限目)◆◆◆◆

●クエリ情報とは、URLの末尾に「?キー名=値」で表現できるシンプルなデータのことを言います。スーパーグローバル変数$_GETを介して取得できます。
●クエリ情報には、(1)データサイズに限度がある(2)使用できない文字があ(3)データが露出する。などの制限があります。時と場合によって、ポストデータと使い分ける必要がある。
●PHPでは、変数/データ型の宣言は不要です。変数が初めて呼び出されたタイミングでメモリが確保されます。
●PHPの変数には必ず先頭が「$」で始まらなければなりません。
●文字列は必ずダブル(シングル)クォーテーションで囲みます。ただし、シングルクォーテーション内に含まれる変数は解釈されません。
●条件分岐には、単純分岐に使用するif命令と多岐分岐に使用するswitch命令とがあります。
★ユーザから引き渡されるさまざまな「リクエスト(要求)」情報。与えられたクエリ情報によって、出力する文字列を動的に切換え。

02サンプル(day02-1) ①query.phpファイル day02-1.htmlファイル(ソース)
①「?category=PHP」、②「?category=JSP」、③「?category=ASP」、「?category=sonota」を指定してみて下さい。
①「?category=PHP」
②「?category=JSP」
③「?category=ASP」

◆◆◆◆まとめ(2時限目)◆◆◆◆

●ヘッタ情報は、その内容によって、①エンティティ・ヘッダー、②一般ヘッタ、③リクエスト・ヘッタ、④レスポンス・ヘッタに分類されます。
●リクエスト・ヘッタを取得するには、スーパーグローバル変数$_SERVERを使用します。
●配列を利用することで、複数のデータを一元的に管理することが出来ます。
●PHPの繰り返し構文には、配列内の要素を処理するforeach命令、回数でループを制御するfor命令、真偽値でループを制御するwhile命令(前置判断)do...while命令(後置判断)があります。
★リクエスト情報は、普段、我々の目には見えない「ヘッタ情報」と呼ばれる不可視の情報が含まれています。

02サンプル(day02-2) ②list_header.php day02-2.htmlファイル(ソース)
②ヘッダ情報を取得し、一覧リストを表示。

◆◆◆◆まとめ(3時限目)◆◆◆◆

●HTTPは、ステートレスなプログラムです。
●ページ間で情報を保持する場合には、クッキーを利用すると便利です。
●クッキーを発行するには、setcookie命令、クッキーを参照するにはスーパーグローバル変数の一つである$_COOKIEを使用します。
●PHPは多くの演算子を提供しています。演算子は、(1)代数演算子、(2)代入演算子、(3)ビット演算子、(4)比較演算子、(5)論理演算子、(6)その他の演算子に分類されます。
★クッキー「Cookie」を利用して、初回に入力したデータを2回目のアクセスで復元。

02サンプル(day02-3) ③cookie.php △ day02-3.htmlファイル(ソース)
  ④cookie_rec.php day02-3.htmlファイル(ソース)
③一回目のアクセスで、メールアドレスを入力。
④二回目のアクセスでは一回目に入力したメールアドレスを表示。
※ローカルで動作、WEBでエラー