シンプルな名簿を作成(1):配列

配列を使って名簿を作る

配列とは
  • 配列は関連する複数のデータを、ひとつの変数でまとめたしくみ
  • P.75参照



$変数名 = array ( データ1, データ2, ...);


7人の名前を配列を使わずに表現した場合には、以下のように別々の変数として用意する必要があります。
これはPHPからみれば通し番号は変数名の一部で、全く関係のない変数として扱われます。

<?php
$name1 = '山田太郎';
$name1 = '横山花子';
$name1 = '井上翔太';
$name1 = '山本久美子';
$name1 = '鈴木次郎';
$name1 = '星山裕子';
$name1 = '山口はな';
?>


そのような問題を解決する、つまり複数の関連するデータとして扱うために「array」という関数を利用することで、配列を作成します。

  • P.77の図参照
<?php
$data = array('山田太郎', '横山花子', '井上翔太', '山本久美子', '鈴木次郎', '星山裕子', '山口はな');
?>


この中から2番目のデータを取り出したい場合には、以下のように記述します。

print($data[1]);
  • ブラケットでくくられた部分は、「インデックス番号」または「添字」と呼び、配列の何番目のデータを取り出すかを表します
  • インデックス番号は、「0」から始まります(例の場合は、0〜6)
print_r関数
  • 配列の内容を確認する
  • 複数の値をみやすく整形するためにはPHPのコードを「pre」タグで囲んでおきます
  • P.79参照
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>PHP入門教室</title>
</head>
<body>
<pre>
<?php
$data = array('山田太郎', '横山花子', '井上翔太', '山本久美子', '鈴木次郎', '星山裕子', '山口はな');
print_r($data);
?>
</pre>
</body>
</html>


《実行結果》

count関数
  • 配列の個数を調べる
名簿には<?php print(count($data)); ?>人が登録されています。


最後のインデックス番号を調べるには、以下のように記述します。

  • インデックス番号が「0」から始まるため
<?php print(count($data)-1); ?>

《完成例》

<?php
$data = array('山田太郎', '横山花子', '田中一郎',
  '山本久美子', '鈴木次郎', '星山裕子', '佐藤勝男');
?>
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>PHP入門教室</title>
</head>
<body>
名簿には<?php print(count($data)); ?>人が登録されています。
<ol>
<?php
  print('<li>'.$data[0].'</li>'."\n");
  print('<li>'.$data[1].'</li>'."\n");
  print('<li>'.$data[2].'</li>'."\n");
  print('<li>'.$data[3].'</li>'."\n");
  print('<li>'.$data[4].'</li>'."\n");
  print('<li>'.$data[5].'</li>'."\n");
  print('<li>'.$data[6].'</li>'."\n");
?>
</ol>
</body>
</html>


《実行結果》


まとめ

  • 配列は関連する複数のデータを、ひとつの変数でまとめたしくみです
  • 配列は、array関数で作成できます
  • 配列の個数を調べるには、count関数を使います
  • 配列の値には「$変数名[ インデックス番号 ]」でアクセスできます
  • 配列やオブジェクトの内容を手軽に確認するには、print_r関数を使います