なんだかんだで2ヶ月前のこのエントリ以来PHPのエントリを書いていない。
実際、今月頭にPC環境の移行をしてからついこないだまでPHPを入れてすらいませんでした。
と、まぁ、こんな感じで、ゆるーくPHPのメモを書いてみます。世の中にPHPドキュメントはごまんとあるので、あくまで自分向けのメモとなります。
GET/POSTメソッドの値を受け取る手順
PHPでGET/POSTメソッドで渡された値を受け取るのは簡単で、1行で説明できます。
- $_GET, $_POSTという連想配列に値が格納されている。
終わり。
超シンプルなサンプルは次のようになります。
1 2 | // hoge.php?foo=bar&foo2=barbar echo $_GET["foo2"]; // →"barbar" |
GET or POST?
値の受け渡しがGETメソッドなのか、POSTメソッドなのかは、$_SERVER['REQUEST_METHOD']という変数に格納されているようです。
1 2 3 4 5 6 7 8 9 | $req_method = $_SERVER['REQUEST_METHOD']; if( $req_method == "GET" ){ // GETメソッドへの対応. echo "check for GET<br>\n"; } else{ // POSTメソッドへの対応. echo "check for POST<br>\n"; } |
連想配列をまわす-foreach
$_GET、$_POSTというのは連想配列な訳ですが、PHP初心者的には、この連想配列の中身を調べる手順の方が重要なメモとなります。
PHPにはいろいろと便利そうな関数が用意されているようですが、foreachで回すのがおそらくシンプルで覚えやすい方法なので、まずはforeachで回してみます。
1 2 3 4 5 6 7 8 | // 通常の配列. foreach($normal_array as $value){ echo "$value<br>\n"; } // 連想配列. foreach($_GET as $key => $value){ echo "$key -- $value<br>\n"; } |
連想配列をまわす-while
whileで回す方法もあったのですが、これは一見して意味が分かりにくい。each関数で処理するようですが、メモ程度に押さえておくだけにしよう。
1 2 3 4 5 6 7 8 | // 通常の配列. while($value = each($normal_array)){ echo "$value<br>\n"; } // 連想配列. while(list($key, $value) = each($_GET)){ echo "$key -- $value<br>\n"; } |
連想配列をまわす-その他
PHPには他にも配列操作用の関数があれこれ用意してありますが、まぁ、無理して使うこともなさそうな気がします。一応、便利な使い道もありそうなarray_walkだけはメモしておく。
1 2 3 4 | function print_values( $value, $key ){ echo "$key -- $value<br>\n"; } array_walk( $_GET, 'print_values' ); |
今日はここまで。




