PHP は Web 開発で広く使用されているスクリプト言語であり、最も基本的で一般的に使用されるデータ構造の 1 つは配列です。 PHP では、配列には数値、文字列、ブール値、オブジェクトなど、あらゆる種類のデータを含めることができます。この記事では、PHP 配列で使用される表現方法とそれに関連する操作についてわかりやすく説明します。
PHP で配列を作成するには 2 つの方法があります。1 つは array() 関数を使用して作成する方法で、もう 1 つは使用するには 大括弧 [] を使用して作成します。どちらの効果も同じなので、具体的な実装を見てみましょう。
array() 関数を使用して宣言します:
$names = array('Bob', 'Tom', 'Jerry');
角括弧 [] を使用して宣言します:
$ages = ['Bob'=>25, 'Tom'=>30, 'Jerry'=>35];
上記 2 つの異なる宣言方法は、正常に配列を作成できます。その理由は、前者は宣言時に array() を使用して関数を参照するのに対し、後者は角括弧 [] を直接使用して宣言するためです。どちらの方法でも効果は全く同じですので、お好みに合わせてどちらの方法を選択してください。
配列要素にアクセスする方法は他のプログラミング言語と同じで、角かっこ [] を使用します。対応する値は、配列要素の一部は角括弧内に書かれています。対応する要素には、キー名またはシリアル番号によってアクセスできます。例:
$names = array('Bob', 'Tom', 'Jerry'); echo $names[0]; //输出Bob echo $names[2]; //输出Jerry $ages = ['Bob'=>25, 'Tom'=>30, 'Jerry'=>35]; echo $ages['Tom']; //输出30
PHP では、出力に echo を使用するだけでなく、配列出力に print_r() 関数または var_dump() 関数を使用することもできます。このうち、print_r()関数の出力結果は見やすく、var_dump()関数は配列の内容を出力するだけでなく、要素のデータ型や長さなどの詳細な情報も出力できます。例:
$names = array('Bob', 'Tom', 'Jerry'); print_r($names); //输出:Array ( [0] => Bob [1] => Tom [2] => Jerry ) var_dump($names); //输出:array(3) { [0]=> string(3) "Bob" [1]=> string(3) "Tom" [2]=> string(5) "Jerry" }
配列の走査は、PHP が提供する for ループおよび foreach ステートメントを通じて操作できます。以下にその実装方法を見てみましょう。
for ループを使用して配列を走査します:
$names = array('Bob', 'Tom', 'Jerry'); $arrayLength = count($names); //获取数组长度 for($i = 0; $i < $arrayLength; $i++){ echo $names[$i] . ' '; //遍历输出数组元素 }
foreach ステートメントを使用して配列を走査します:
$ages = ['Bob'=>25, 'Tom'=>30, 'Jerry'=>35]; foreach ($ages as $key => $value){ echo $key . ' is ' . $value . ' years old.'; //遍历输出数组元素和键名 }
list() 関数を使用して配列を走査します:
$nameArr = ['Bob', 'Tom', 'Jerry']; list($name1, $name2, $name3) = $nameArr; echo $name1 . ', ' . $name2 . ', ' . $name3; //遍历输出数组元素
PHP には一連の配列操作関数が用意されており、ここでは一般的な操作メソッドをいくつかリストします。
要素の追加: array_push() または array_unshift() 関数を使用して、配列の末尾または先頭に新しい要素を追加します。
$names = array('Bob', 'Tom', 'Jerry'); array_push($names, 'John'); //添加新元素到末尾 array_unshift($names, 'Lucy'); //添加新元素到开头 print_r($names); //输出:Array ( [0] => Lucy [1] => Bob [2] => Tom [3] => Jerry [4] => John )
要素の削除: array_pop() 関数または array_shift() 関数を使用して、配列の末尾または先頭の要素を削除します。
$names = array('Bob', 'Tom', 'Jerry'); array_pop($names); //删除末尾元素 array_shift($names); //删除开头元素 print_r($names); //输出:Array ( [0] => Tom )
配列のマージ: array_merge() 関数を使用して、2 つの配列を新しい配列にマージします。
$names1 = array('Bob', 'Tom'); $names2 = array('Jerry', 'Lucy'); $names = array_merge($names1, $names2); //将两个数组合并为一个新数组 print_r($names); //输出:Array ( [0] => Bob [1] => Tom [2] => Jerry [3] => Lucy )
共通部分と差分を見つける: array_intersect() 関数を使用して 2 つの配列の共通部分を見つけ、array_diff() 関数を使用して 2 つの配列の差分を見つけます。
$nums1 = [1, 2, 3, 4, 5]; $nums2 = [3, 4, 5, 6, 7]; $intersect = array_intersect($nums1, $nums2); //求交集 print_r($intersect); //输出:Array ( [2] => 3 [3] => 4 [4] => 5 ) $diff = array_diff($nums1, $nums2); //求差集 print_r($diff); //输出:Array ( [0] => 1 [1] => 2 )
PHP には、配列を昇順または降順に並べ替えることができる組み込みの配列並べ替え関数が多数あります。ここでは、一般的に使用される操作をいくつかリストします。ソート関数により、元の配列内の要素の順序が変更されることに注意してください。
昇順で並べ替える:sort() 関数を使用して、配列要素を昇順で並べ替えます。
$nums = [6, 4, 2, 8, 1]; sort($nums); print_r($nums); //输出:Array ( [0] => 1 [1] => 2 [2] => 4 [3] => 6 [4] => 8 )
降順で並べ替える: rsort() 関数を使用して、配列要素を降順で並べ替えます。
$nums = [6, 4, 2, 8, 1]; rsort($nums); print_r($nums); //输出:Array ( [0] => 8 [1] => 6 [2] => 4 [3] => 2 [4] => 1 )
関連付けられたキー値で並べ替えます: asort() 関数を使用して配列要素を昇順に並べ替えます (ただし、キー値には影響しません)。arsort() 関数を使用して配列要素を降順に並べ替えます順序 (ただし、キー値には影響しません)、値)。
$ages = ['Bob'=>25, 'Tom'=>30, 'Jerry'=>35]; asort($ages); print_r($ages); //输出:Array ( [Bob] => 25 [Tom] => 30 [Jerry] => 35 ) arsort($ages); print_r($ages); //输出:Array ( [Jerry] => 35 [Tom] => 30 [Bob] => 25 )
関連付けられたキー名で並べ替える: ksort() 関数を使用して配列要素をキー名で昇順に並べ替え、krsort() 関数を使用して配列要素をキー名で降順に並べ替えます。
$ages = ['Bob'=>25, 'Tom'=>30, 'Jerry'=>35]; ksort($ages); print_r($ages); //输出:Array ( [Bob] => 25 [Jerry] => 35 [Tom] => 30 ) krsort($ages); print_r($ages); //输出:Array ( [Tom] => 30 [Jerry] => 35 [Bob] => 25 )
上記はすべて、PHP 配列および関連する操作の一般的な表現方法の一部です。 PHP 配列は非常に柔軟で便利なデータ構造であることがわかります。また、PHP は豊富な配列操作テクノロジも提供しているため、配列を使用する際の開発がより簡単かつ効率的になります。
以上がPHPにおける配列表現方法とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。