
「独習PHP」を元に、要約メモしておきたいと思います。
配列
仕切りのある入れ物のこと。ひとつの変数に対してひとつの値を持つものをスカラー変数といい、配列のように複数の値を持つことができる入れ物のことを非スカラー変数という。
array命令
1 | array(要素1,要素2,...) array(キー1=>要素1,キー1=>要素1,...) |
通常配列
1 2 3 4 | <?php $data=array(0=>'ひとつ',1=>'ふたつ',2=>'みっつ',3=>'よっつ'); print($data[3]); ?> |
よっつ
連想配列
1 2 3 4 | <?php $data=array('ひとつ'=>'1個','ふたつ'=>'2個','みっつ'=>'3個'); print($data['みっつ']); ?> |
3個
キーが省略された場合には、その時点でのキーの最大値+1が振り分けられる。 デフォルトでは「0,1,2,3,…」だけど、下記の場合キー2を飛ばしてキー3が割り振られているので、次からはキー4,5,6,…という風に割り振られていく。
1 2 3 4 | <?php $data=array('1'=>'one','3'=>'three','four','five','six'); print($data[6]); ?> |
six
ネスト構造(入れ子)
1 2 3 4 5 6 7 8 | <?php $data=array( array('A','B'), array('C','D'), array('E','F'), ); print ($data[2][0]); ?> |
E
ブラケット([])構文
1 2 3 4 5 6 7 8 | <?php $data=array('ひとつ','ふたつ','みっつ'); $data[0]='いくつ'; //キー0の要素を書き換え $data[]='よっつ'; //最後に要素を追加 print($data[0]); print('<br />'); //改行する print($data[3]); ?> |
いくつ よっつ
print_r命令
非スカラー変数の内容を視覚的に見やすい形で出力する。 ブラウザ上では改行されていない状態で表示されるので、ブラウザでソースを表示すると見やすい。
1 2 3 4 5 6 | <?php $data=array('ひとつ','ふたつ','みっつ'); $data[0]='いくつ'; $data[]='よっつ'; print_r($data) ?> |
Array ( [0] => いくつ [1] => ふたつ [2] => みっつ [3] => よっつ )