Syntax Error.

[Sy] PHPの配列の作り方(PHP5.4以前&以降)

2019/01/21

PHP では 配列 が大活躍します。この記事では配列をどのように作ればよいのか(定義すればよいのか)を説明します。PHP5.4以降の新しい書き方 も合わせて説明しています。

※今回は作り方の説明にしぼるため、配列自体の細かい解説はまた別の記事にします。

空の配列の作り方

要素がなにもない、空の配列を作るにはこう書きます。

$a = array();

PHP5.4以降は、このように [] だけでシンプルに書くこともできます。(従来の上の書き方でも良いです)

$b = [];

PHPにはいくつか値を出力する方法がありますが、配列の場合、 print_r() を使うと見やすいです。

今作った $aprint_r() を使って出力すると、こうなります。

print_r($a);

(出力結果)
Array
(
)

$b を出力しても、同じ結果になります。

print_r($b);

(出力結果)
Array
(
)

Array というのが配列を表していて、本来はその中にある要素たちが () 内に出力されるんですが、今回作った配列は空なので、上のような出力になります。

はじめから要素を持った配列の作り方

次に、いくつかの要素をはじめから持った配列を作る場合の書き方です。

例えば、1つ目の値として文字列の 'hello' を、2つ目の値として数値の 1 を持たせるには、このように書きます。

$c = array(
  'hello',
  1
);

(PHP5.4以降はこちらでも)
$d = [
  'hello',
  1
];

print_r($c) で出力すると、

Array
(
    [0] => hello
    [1] => 1
)

というようになります。1つ目の要素から順番に、自動的に 0,1,2,... というように番号が振られます。

連想配列の作り方

ここまでの配列は値を順番に番号をつけて持ってましたが、PHPには 連想配列 と呼ばれる形があります。

連想配列は、 キーと値 がセットになった要素を持っていて、 キーを指定することで値を取り出すことができます。

例えば、id というキーと name というキーを持っていて、それぞれ 1'utano' を値に持つ連想配列はこのように書くことで作れます。

$e = array(
  'id' => 1,
  'name' => 'utano'
);

(PHP5.4以降はこちらでも)
$f = [
  'id' => 1,
  'name' => 'utano'
];

print_r($f) での出力はこうなります。

Array
(
    [id] => 1
    [name] => utano
)