ホームページ > バックエンド開発 > PHPの問題 > PHP配列を作成するにはどのような方法がありますか?

PHP配列を作成するにはどのような方法がありますか?

青灯夜游
リリース: 2023-03-15 22:56:01
オリジナル
4545 人が閲覧しました

配列の作成方法: 1. "$array name[subscript]=value;" ステートメントを使用して直接代入によって配列を作成します; 2. "$array name=array(key name=>)" を使用します;value);" ステートメント; 3. array_fill() を使用してキー値を埋めて新しい配列を作成します; 4. array_combine() などを使用します。

PHP配列を作成するにはどのような方法がありますか?

このチュートリアルの動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター

php で配列を作成するにはどうすればよいですか?次の記事では、配列を作成するいくつかの方法を紹介します。

1. 直接代入による配列の作成

1 次元配列を宣言するための構文形式は次のとおりです:

$数组变量名[下标] = 值;
ログイン後にコピー

添え字 (インデックス値) は文字列または整数にすることができ、添え字は [ ] で囲む必要があります。

インデックス配列を宣言する場合、インデックス値が増加する場合、角括弧内に特定のインデックス値を指定することもできません。この場合、インデックス値はデフォルトで 0 から順に増加します。

<?php
header("Content-type:text/html;charset=utf-8");
$array[] = &#39;苹果&#39;;
$array[] = &#39;香蕉&#39;;
$array[] = &#39;橘子&#39;;
$array[] = &#39;榴莲&#39;;
var_dump($array);
?>
ログイン後にコピー

PHP配列を作成するにはどのような方法がありますか?

2. array() 関数を使用して配列を作成します

宣言する別の方法配列 array() 関数を使用して、新しい配列を作成します。カンマで区切られた特定の数の key=>value パラメータのペアを受け入れます。構文形式は次のとおりです。

$数组变量名 = array(key1 => value1, key2 => value2, ..., keyN => valueN);
ログイン後にコピー

例 1:

<?php
header("Content-type:text/html;charset=utf-8");
$array = array(&#39;红色&#39;,&#39;黄色&#39;,&#39;蓝色&#39;,&#39;紫色&#39;);
var_dump($array);
?>
ログイン後にコピー

PHP配列を作成するにはどのような方法がありますか?

例 2:

<?php
header("Content-type:text/html;charset=utf-8");
$array = array("id"=>25,"name"=>"李华","age"=>18);
var_dump($array);
?>
ログイン後にコピー

PHP配列を作成するにはどのような方法がありますか?

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 となります。

  • 負の場合、配列インデックスは $index012 になります。 , ..., $番号-2 で構成されます。たとえば、$index が -2、$number が 4 の場合、配列インデックスは -2、0、1、2 となります。

上記の例では、array_fill(0,4,"hello")$index は 0 です (インデックスは から始まります) 0) 、$number は 4 (配列には 4 つの要素がある) であるため、配列インデックスは 0、1、2、3 となり、$valuehello# になります。 ##、これら 4 つの要素のキー値は hello であるため、出力結果は次のようになります:

PHP配列を作成するにはどのような方法がありますか?

2 つの例を見てみましょう:

<?php
$arr=array_fill(3,4,"hello");
var_dump($arr);
?>
ログイン後にコピー

分析: インデックスは 3 から始まり 3 で終わります 4-1=6。配列のキー値はすべて

hello であるため、出力結果は次のようになります:

PHP配列を作成するにはどのような方法がありますか?

<?php
$arr=array_fill(-2,4,"hello");
var_dump($arr);
?>
ログイン後にコピー

出力結果は次のとおりです:

PHP配列を作成するにはどのような方法がありますか?

$valueパラメータは a だけではありません単一の値/文字列だけでなく 配列の場合、作成されるのは 2次元配列です。

<?php
header("Content-type:text/html;charset=utf-8");
$arr=array_fill(0,4,array("张三",25,"男"));
var_dump($arr);
?>
ログイン後にコピー

出力結果は次のとおりです:

PHP配列を作成するにはどのような方法がありますか?

#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() 関数は、

$keys

配列内の要素をキー名として使用し、$value を値として使用して、新しい配列を埋め込みます。 。 <p>从上面的代码示例可以看出:新数组有四个元素,键名分别为“<code>a”、“b”、“c”、“d”;这四个元素的键值都为“hello”,因此输出结果为:

PHP配列を作成するにはどのような方法がありますか?

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);
?>
ログイン後にコピー

输出结果为:

PHP配列を作成するにはどのような方法がありますか?

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));
?>
ログイン後にコピー

输出结果为:

PHP配列を作成するにはどのような方法がありますか?

可以看出,上面的示例中使用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配列を作成するにはどのような方法がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
関連するチュートリアル
人気のおすすめ
最新のコース
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート