この文書の現在のバージョンと選択したバージョンの差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
php_array [2018/06/04 10:31] 管理者 |
php_array [2018/06/04 10:32] (現在) 管理者 [連想配列] |
||
---|---|---|---|
ライン 1: | ライン 1: | ||
+ | ====== PHPの配列変数 ====== | ||
+ | 通常変数では1変数に1つの値しか代入できませんが、配列変数では1つの配列変数に添え字を付けて複数の値を代入する事ができます。 | ||
+ | |||
+ | ===== 添え字を数値で格納 ===== | ||
+ | |||
+ | 配列変数は、1つの変数名に番号を付けて管理する方法です。番号は0番からの正数となります。同じような処理を連続して行う場合に使用します。 | ||
+ | |||
+ | 他のプログラム言語の「(一次元)配列」に相当しますが、取り扱いは連想変数に相当するため、配列は0から順番に使用しないと次の問題が発生します。 | ||
+ | |||
+ | * 例えば配列を$a[1] $a[3] $a[5]と飛び飛びに使用した場合、配列数 count($a); は 5では無く「3」を返すので、forで繰り返し処理できません。最大値を記録する手段が必要となります。 | ||
+ | |||
+ | 配列の登録方法 | ||
+ | <code> | ||
+ | $a=array(); //配列初期化 | ||
+ | $b=array('aaa'); //初期化と同時に配列追加 | ||
+ | $c=array('aaa','bbb'); //複数も可能 | ||
+ | array_push($b,'ccc'); //配列追加 | ||
+ | array_push($c,'ccc','ddd'); //配列追加(複数) | ||
+ | $d[]='aaa'; //[]でも配列登録(初期化されていれば$d[0]から開始) | ||
+ | $d[]='bbb'; //[]でも追加すると$d[1]に代入 | ||
+ | |||
+ | //使用注意(上記) | ||
+ | $e=array(); | ||
+ | $e[1]='aaa'; | ||
+ | $e[3]='ccc'; | ||
+ | $e[5]='eee'; | ||
+ | echo count($e); //→3を返します(添え字の最大値では無いので注意) | ||
+ | </code> | ||
+ | |||
+ | <html> | ||
+ | <style>.b1{border:1px solid #000;}</style> | ||
+ | </html> | ||
+ | ==== サンプルコード ==== | ||
+ | |||
+ | <code php> | ||
+ | <?php | ||
+ | $a[] = 10; //$a[0]と同じ | ||
+ | $a[] = 30; //$a[1] | ||
+ | $a[] = 50; | ||
+ | for ($i=0; $i<count($a); $i++){ | ||
+ | echo $a[$i].'<br>'; | ||
+ | } | ||
+ | ?> | ||
+ | </code> | ||
+ | |||
+ | ==== 実行結果 ==== | ||
+ | <php> | ||
+ | echo '<div class="b1">'; | ||
+ | $a[] = 10; | ||
+ | $a[] = 30; | ||
+ | $a[] = 50; | ||
+ | for ($i=0; $i<count($a); $i++){ | ||
+ | echo $a[$i].'<br>'; | ||
+ | } | ||
+ | echo '</div>'; | ||
+ | </php> | ||
+ | |||
+ | ===== 連想配列 ===== | ||
+ | |||
+ | 連想配列は、特定の変数に文字列を付けて管理する方法です。 | ||
+ | |||
+ | <code php> | ||
+ | <?php | ||
+ | //都道府県名から都道府県名番号 | ||
+ | $a['hokkaido']=1; | ||
+ | $a['aomori']=2; | ||
+ | $a['tokyo']=13; | ||
+ | foreach ($a as $key => $value){ | ||
+ | print $key.'=>'.$value; | ||
+ | } | ||
+ | //都道府県名番号から都道府県名 | ||
+ | $b[1]="北海道"; | ||
+ | $b[2]="青森"; | ||
+ | $b[13]="東京"; | ||
+ | foreach ($b as $key => $value){ | ||
+ | print $key.'=>'.$value; | ||
+ | } | ||
+ | ?> | ||
+ | </code> | ||