配列の作成方法: 1. "$array name[subscript]=value;" ステートメントを使用して直接代入によって配列を作成します; 2. "$array name=array(key name=>)" を使用します;value);" ステートメント; 3. array_fill() を使用してキー値を埋めて新しい配列を作成します; 4. array_combine() などを使用します。
このチュートリアルの動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター
php で配列を作成するにはどうすればよいですか?次の記事では、配列を作成するいくつかの方法を紹介します。
1. 直接代入による配列の作成
1 次元配列を宣言するための構文形式は次のとおりです:
$数组变量名[下标] = 值;
添え字 (インデックス値) は文字列または整数にすることができ、添え字は [ ]
で囲む必要があります。
インデックス配列を宣言する場合、インデックス値が増加する場合、角括弧内に特定のインデックス値を指定することもできません。この場合、インデックス値はデフォルトで 0 から順に増加します。
<?php header("Content-type:text/html;charset=utf-8"); $array[] = '苹果'; $array[] = '香蕉'; $array[] = '橘子'; $array[] = '榴莲'; var_dump($array); ?>
2. array() 関数を使用して配列を作成します
宣言する別の方法配列 array() 関数を使用して、新しい配列を作成します。カンマで区切られた特定の数の key=>value パラメータのペアを受け入れます。構文形式は次のとおりです。
$数组变量名 = array(key1 => value1, key2 => value2, ..., keyN => valueN);
例 1:
<?php header("Content-type:text/html;charset=utf-8"); $array = array('红色','黄色','蓝色','紫色'); var_dump($array); ?>
例 2:
<?php header("Content-type:text/html;charset=utf-8"); $array = array("id"=>25,"name"=>"李华","age"=>18); var_dump($array); ?>
3. array_fill() を使用して配列を作成します
array_fill(): キー値を埋めることによって新しい配列が作成されます
<?php $arr=array_fill(0,4,"hello"); var_dump($arr); ?>
array_fill($index, $number, $value)
関数は省略できない 3 つのパラメータを受け入れます $index
(開始インデックス)、$number
(パディング要素の数) および $value
(パディングに使用されるキー値)。
このうち、$index
パラメータは負の値をサポートしており、配列インデックスには次の 3 つの値があります。
正の場合数値、配列 インデックスは $index
値から始まり、$index $number-1
値で終わります。たとえば、$index
が 2、$number
が 4 の場合、配列インデックスは 2、3、4、5 となります。
0 の場合、配列インデックスは 0
から始まり $number-1
の値で終わります。たとえば、$index
が 0、$number
が 4 の場合、配列インデックスは 0、1、2、3 となります。
負の場合、配列インデックスは $index
、0
、1
、2 になります。
, ..., $番号-2
で構成されます。たとえば、$index
が -2、$number
が 4 の場合、配列インデックスは -2、0、1、2 となります。
上記の例では、array_fill(0,4,"hello")
の $index
は 0 です (インデックスは から始まります) 0) 、$number
は 4 (配列には 4 つの要素がある) であるため、配列インデックスは 0、1、2、3 となり、$value
は hello# になります。 ##、これら 4 つの要素のキー値は
hello であるため、出力結果は次のようになります:
<?php $arr=array_fill(3,4,"hello"); var_dump($arr); ?>分析: インデックスは 3 から始まり 3 で終わります 4-1=6。配列のキー値はすべて
hello であるため、出力結果は次のようになります:
<?php $arr=array_fill(-2,4,"hello"); var_dump($arr); ?>出力結果は次のとおりです:
$valueパラメータは
a だけではありません単一の値/文字列だけでなく 配列の場合、作成されるのは 2次元配列です。
<?php header("Content-type:text/html;charset=utf-8"); $arr=array_fill(0,4,array("张三",25,"男")); var_dump($arr); ?>出力結果は次のとおりです:
#4. array_fill_keys() 関数を使用しますarray_fill_keys(): キー名とキー値を入力して新しい配列を作成します
<?php $keys=array("a","b","c","d"); $arr=array_fill_keys($keys,"hello"); var_dump($arr); ?>array_fill_keys($keys,$value)
関数は省略できない 2 つのパラメーターを受け取ります$keys
(キー名を含む配列)、$value
(キーの値)。 簡単に言えば、array_fill_keys() 関数は、
配列内の要素をキー名として使用し、$value
を値として使用して、新しい配列を埋め込みます。 。 <p>从上面的代码示例可以看出:新数组有四个元素,键名分别为“<code>a
”、“b
”、“c
”、“d
”;这四个元素的键值都为“hello
”,因此输出结果为:
array_fill_keys()和array_fill()函数一样,$value
值也可以接受一个数组,那么创建的就是一个二维数组了。
<?php header("Content-type:text/html;charset=utf-8"); $keys=array("a","b","c","d"); $arr=array_fill_keys($keys,array("李四",21,"男")); var_dump($arr); ?>
输出结果为:
5、使用array_combine()函数
array_combine()函数可以通过合并两个数组(一个为键名数组,一个为键值数组)来创建一个新数组。
<?php header("Content-type:text/html;charset=utf-8"); $keys=array("a","b","c","d"); $values=array("red","green","blue","yellow"); var_dump($keys); var_dump($values); echo "使用array_combine()合并数组后:"; var_dump(array_combine($keys,$values)); ?>
输出结果为:
可以看出,上面的示例中使用array_combine($keys,$values)
函数通过合并两个数组的方式创建了一个新数组,其中$keys
数组中的元素作为了新数组的键名,$values
数组的元素为作为了新数组的键值。
需要注意的是:
使用array_combine()函数创建数组时,$keys数组和$values数组中的元素个数必须要一致,这才能让键名和键值一一对应,否则就会报错并返回 FALSE
$keys数组不可为多维数组,但$values数组可以为多维数组。
6、使用range() 函数
range() 函数创建一个包含指定范围的元素的数组。
语法:
range(low,high,step)
low 必需。规定数组元素的最小值。
high 必需。规定数组元素的最大值。
step 可选。规定元素之间的步进制。默认是 1。
该函数返回一个包含从 low 到 high 之间的元素的数组。
<?php header("Content-type:text/html;charset=utf-8"); var_dump(range(0,5)); var_dump(range(0,5,2)); var_dump(range(0,20,5)); ?>
推荐学习:《PHP视频教程》
以上がPHP配列を作成するにはどのような方法がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。