配列は 1 つの変数に複数の値を格納できます:
例
<?php $cars=array("Volvo","BMW","Toyota"); echo "I like" . $cars[0] . "," . $cars[1] . "and " . $cars[2] . "."; ?>
試してみる »
配列とは何ですか?
配列は、単一の変数に複数の値を格納できる特別な変数です。
配列は、関連データのグループを管理するための迅速かつ便利な方法を提供し、PHP プログラミングの重要な部分です。
項目のリスト (例: 車名のリスト) がある場合は、次のように単一の変数に保存します。
$cars2 = "BMW"; cars3 = "Toyota";
しかし、配列を反復処理して特定の配列を見つけたい場合はどうすればよいでしょうか?配列に項目が 3 つだけではなく 300 個ある場合はどうなるでしょうか?
解決策は配列を作成することです。
配列は単一の変数に複数の値を格納でき、キーに基づいて配列内の値にアクセスできます。
PHP で配列を作成する
PHP では、array() 関数を使用して配列を作成します:
array() ;PHP 5.4 以降では、より簡潔な方法で配列を初期化できます: [] を使用します。 one 角括弧内に表します。 PHP には 3 種類の配列があります:
1. 数値配列 - 数値 ID キーを持つ配列
2. 連想配列 - 指定されたキーを持つ配列、各キーは値
3 に関連付けられます。 1 つ以上の配列を含む配列
PHP 数値配列
数値配列を作成するには 2 つの方法があります:
ID キーを自動的に割り当てる (ID キーは常に 0 から始まります):
$cars= array("Volvo"," BMW","Toyota");
手動で割り当てられた ID キー:
$cars1[0] = "Volvo";
$cars2[1] = "BMW";
$cars3 [2] = "Toyota" ;
次の例では、$cars という名前の数値配列を作成し、3 つの要素を配列に割り当て、配列の値を含むテキストを出力します。
例
<?php $cars=array("Volvo","BMW","Toyota"); var_dump($cars); // 可以打印出来看看是什么 echo "I like" . $cars[0] . "," . $cars[1] . "and " . $cars[2] . "."; ?>
試してみる»
配列の長さ - count() 関数
count() 関数は、配列の長さ (要素数) を返すために使用されます: Example
<?php $cars=array("Volvo","BMW","Toyota"); echo count($cars); ?>
試してみる »
数値配列のトラバース
数値配列内のすべての値をトラバースして出力します。以下に示すように、for ループを使用できます。 例
<?php $cars=array("Volvo","BMW","Toyota"); $arrlength=count($cars); for($x=0;$x<$arrlength;$x++) { echo $cars[$x]; echo "<br>"; } ?>
試してみる »
for ループについては、次の章で詳しく説明します。ループについては PHP を参照してください
PHP 連想配列
連想配列は、配列に割り当てる指定されたキーを使用する配列です。 連想配列を作成するには 2 つの方法があります:
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
または:$age['Peter']="35"; $age['Ben']="37"; スクリプトで指定されたキーを使用します:
Example
<?php $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); echo "Peter is" . $age['Peter'] . "years old."; ?>
次に、連想配列を宣言しましょう。文字列の添字を指定し、対応するキーと値を使用する必要があります。
<?php //声明一下关联数组 $rela = array( '帅' => '你', '很帅' => '黄晓明', '灰常灰常帅' => '宁泽涛', '有男人味的大叔' => '吴秀波', ); //简洁声明 $drink = [ '美' => '凤姐', '很美' => '芙蓉姐姐', 'verymei' => '杨幂', '心中滴女神呀' => '华妃', 100 => '孙俪', '娘娘', ]; // 输出 $rela echo '<pre>'; var_dump($rela); echo '</pre>'; // 输出$drink echo '<pre>'; var_dump($drink); echo '</pre>'; ?>
実験して最終結果を見てみましょう:
array(4)
{
["handsome"]=> string(3) "you"
["とてもハンサム" ]=> string(9) "Huang Xiaoming"
["灰色、しばしば灰色、しばしばハンサム"]=> string(9) "Ning Zetao"
["男らしいおじさん"]=> string(9) "Wu Xiubo"
}
array(6) {
["美"]=> string(6) "Sister Feng"
["very beautiful"]=> string(12) "Sister Furon"
["verymei" ]=> ; string(6) "Yang Mi"
["私の心の女神"]=> string(6) "Hua Fei"
[100]=> string(6) "Sun Li"
[101]= > string(6) "Empress"
}
上記の例を使用すると、次のことがわかります。
連想配列をキー名として宣言します =>
連想配列では、次のようにすることができます。インデックス配列の要素添字のない要素が連想配列内のインデックス配列の要素の後に宣言されている場合でも、最大値 + 1 の原則に従います。 (上の図の値が Sun Li と Empress の 2 つの要素であることに注目してください)。
連想配列を走査する
連想配列内のすべての値を反復して出力するには、以下に示すように foreach ループを使用できます: 例<?php $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); foreach($age as $x=>$x_value) { echo "Key=" . $x . ", Value=" . $x_value; echo "<br>"; } ?>
試してみる »
覚えておいてください
配列に配列を挿入するときは、カンマを使用しないでください。セミコロン (; ) を書いてください。 次の図は間違った画像表示です:多次元配列
多次元配列については、PHP 上級チュートリアルのセクションで詳しく紹介されます。 完全な PHP 配列リファレンス マニュアル すべての配列関数の完全なリファレンス マニュアルについては、PHP 配列リファレンス マニュアルをご覧ください。 このリファレンスマニュアルでは、各機能の簡単な説明と応用例が説明されています。