配列

配列をマスターしよう。

1 つの変数で複数の値を持つのが配列です。 配列を使うと、複数の値について一括処理でき、 プログラムの見通しが良くなります。 ここでは配列の作り方、使い方を学びましょう。

配列とは

配列とは、複数の変数を一度にまとめたものだと考えると分かりやすいでしょう。 変数は 1 つの値を持っていますが、配列は変数の拡張といえます。

配列は複数の値を持つので、この特徴を生かして、例えば下の例のように、 曜日を 1 つの配列にするとプログラムの見通しが良くなります。

<?php
$week = array ("日","月","火","水","木","金","土");
print $week[0] ;
print $week[1] ;
print $week[2] ;
print $week[3] ;
print $week[4] ;
print $week[5] ;
print $week[6] ;
? >

array は、配列を作る命令で、「日」「月」の順に配列に格納されます。 配列のデータを表示するときは、$week[0] のように、 配列名の後に角かっこと数字を書きます。 数字が 0 から始まることに注意しましょう。

配列の作り方いろいろ

配列は、array コマンドを使用する他にも、 いろいろな方法で作ることができます。 下の例のように、1つづつ値を格納していくやり方があります。

<?php
$week[] = "日";
$week[] = "月";
$week[] = "火";
$week[] = "水";
$week[] = "木";
$week[] = "金";
$week[] = "土"; 
?>

上のやり方では、書いた順に配列に格納されますが、 明示的に格納する場所を指定することもできます。

<?php
$week[2] = "火";
?>

もう一つ、explode という便利な配列の作り方があります。 explode 関数は、ある文字列を区切り文字で区切って、 順に配列に格納します。 例えば、下のようになります。

<?php
$week = explode(",","日,月,火,水,木,金,土");
?>

CSV ファイルのように、 カンマで区切られたテキストを分割するのに便利です。 区切り文字には、カンマ以外の文字も利用できます。

連想配列を作る

今までの配列は$array[0] のように数字がインデックス(添字) に使用されていましたが、 数字の代りに文字列にすることができます。 例えば、下の例のように用います。 文字列をクォーテーションマークで必ず括りましょう。

<?php
$homepage['title'] = "人気ホームページ製作法";
$homepage['url'] = "http://ninkiweb.net/";
?>

こうしておくと、単なる数字よりも、変数が表すものが分かりやすく、 見やすいプログラムになります。 下のような書き方もできます。

<?php
$homepage = array("title" => "人気ホームページ製作法", "url" => "http://ninkiweb.net/");
?>

配列の値を呼び出すには

配列の値を呼び出すには、配列名にインデックス(添字)をつければ OK です。 $week[0]$homepage['title'] のようにします。

配列の値を順に呼び出すには、ループを利用しましょう。 関数 for を用います。

<?php
 for ($i=0; $i<7; $i++) {
        print $week[$i];
 }
?>

連想配列の場合は少し複雑で、foreach を使用します。 $homepage のところが配列名です。 $keyは連想配列の添字に、 $value は値になります。

<?php
foreach($homepage as $key => $value) {
        print "$key は、$value です。\n";
}
?>
Copyright (C) 2003-2013. PHP で WEB 作成 All rights reserved.