あちあち情報局

趣味や日曜プログラムなどを書いています

ユーザ用ツール

サイト用ツール


php_array

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
php_array [2018/05/16 21:29] 管理者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>
  

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki