プログラミング言語

【PHP入門⑥】配列 ~初心者でも安心!基礎から学べるプログラミング講座~

プログラミング言語

※前回の講座がまだの人はこちら
【PHP入門⑤】繰り返し ~初心者でも安心!基礎から学べるプログラミング講座~

配列とは?

配列とは、複数の値を格納できる変数のことです。
今まで変数に値を入れる場合は、値の数だけ変数を用意していました。
人のプロフィールを変数に入れたい場合を考えてみてください。

この太郎君のプロフィールを変数へ入れる場合は

$name = "太郎";
$age = 8;
$gender = "男";

この様に入れると思います。
では、4人分のプロフィールを変数へ入れる場合はどうしますか?

$name1 = "太郎";
$age1 = 8;
$name2 = "花子";
$age2 = 16;
$name3 = "桃子";
$age3 = 28;
$name4 = "和夫";
$age4 = 35;

それぞれ変数を作成し、どの人のプロフィールか分かる様にすると思います。(1:太郎,2:花子,3:桃子,4:和夫)
ただ、プロフィールが増えれば増える程、変数も増やさないといけない上に、間違えて違う人のデータを取ってくるかもしれません。
そこで配列を使えば、複数の値を一つの変数へ入れることが可能なので
人単位でプロフィールを管理することが出来ます。

配列

一つの変数に複数の値を格納するってイメージが付きにくいと思います。
変数の説明で箱をイメージしてもらいました。
※変数編はこちら→【PHP入門②】変数 ~初心者でも安心!基礎から学べるプログラミング講座~


配列の場合は、その箱が繋がっているイメージで、それぞれの箱にデータが格納できます。

配列の作成

配列の作成方法は複数あります。

$profile = array();
$profile = [];

どちらの書き方でも、「$profileという変数を配列にします」という意味になります。

配列の構造

配列を作成した時、それぞれの箱を区別することが可能です。
箱一つ一つに数字が自動で振られ、その数字によって箱の場所がわかる様になってます。

データの追加

配列にデータを入れる方法は、場所を指定して入れる方法配列の最後尾に入れる方法があります。

場所を指定して入れる場合は、数字を指定
→$profileという配列の”1″の箱に’太郎’を入れる

最後尾に入れる場合は、何も指定しない
→$profileという配列の最後尾に8を入れる(新しく”4″の箱を追加)

プログラムはそれぞれ以下の様に書きます。

$profile[1] = '太郎';
$profile[] = 8;

配列の初期値

以下の配列を考えてみます。

$hanakoという配列を作成し、以下に値を入れる。
0に名前(花子)
1に年齢(16)
2に性別(女)
$hanakoという配列に追加で、趣味(ピアノ)の値を入れる。

$hanako = array();
$hanako[0] = '花子';
$hanako[1] = 16;
$hanako[2] = '女';
$hanako[] = 'ピアノ';

この様に書けると思います。
ただ、配列は作成と同時に初期値として、値を入れることができます。
書き方は複数存在し、以下の様に書きます。

$hanako = array('花子', 16, '女');
$hanako = ['花子', 16, '女'];

それぞれの値が入る場所は、指定していない為、先頭から0,1,2と順番になります。

配列の中身の表示

配列に値を入れたら、配列の中身を表示させたいはずです。
配列の中身は、場所を指定してあげて、変数と同様に扱うことが可能です。

echo $hanako[0];
echo $hanako[1];
echo $hanako[2];

上から順番に、「花子」「16」「女」と表示されます。
※場所を指定しないと値は表示されないので注意

配列の中身を複数表示させたい時、for文を使えば簡単に出来ます。

for($i=0; $i<3; $i++) {
    echo $hanako[$i];
}

$iを「0から3」まで繰り返すfor文です。
条件「$i<3」の3は、配列の長さを指しています。(配列の箱の数と考えてくれれば良いです。)
「echo $hanako[$i]」とすることで、$iが0から1ずつ増えて、順番に全ての値を表示することが出来ます。

配列の長さが分からない場合、for文の条件をどうすれば良いか困ると思います。
そこで、配列ではforeach文が良く使われます。

foreach($hanako as $value) {
    echo $value;
}

foreach文は配列の中身を0から順番に全て取得するまで繰り返す、繰り返し文です。
$valueに配列の値が入ります。($valueは任意の変数名を自分で指定してください。)
$hanakoという配列の0番目には、「花子」が入っているため、最初$valueには「花子」が入ります。foreach文内の処理を行ったら、次は配列の1番目を見に行きます。1番目には、「16」が入っているため、$valueには「16」が上書きされ、foreach文内の処理が行われます。2番目も同様の処理を行い、3番目は値が入っていないため、foreach文を抜けます。

まとめ

PHPにおいて配列は、とても重要で至る所で使います。
配列の仕組みを理解し、扱える様に心掛けてください。
配列の講座はまだ続きます。次回は、少し複雑な配列を紹介します。

次回講座:連想配列
【PHP入門⑦】連想配列 ~初心者でも安心!基礎から学べるプログラミング講座~

タイトルとURLをコピーしました