2014年11月30日日曜日

【PHP】多次元連想配列の学習記録

※ ソースコードを見やすくするために、Syntaxhilighterを使っています。状況によって表示に時間がかかる場合があります。

今日は下記のページを参考に勉強しました。とても役に立ちました。ありがとうございます。

PHPの多次元配列と連想配列についてのサンプル


下記は上記のリンクのコードをテスト結果を格納するように変更しました。実際には次のTAGが抜けています。


<pre><?php
?>
</pre>

<pre></pre>があるとprint_rで配列の中身を表示したときに、さらに見やすくなります。(Eclipse上で内部Webブラウザに出力させています)


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
/* 生徒のidとテストの成績を要素とする配列を作成
 * 生徒名を書き出した上で、最後に配列の中身を表示する
 */
 
// 生徒の配列を作成
$student = array (
                'John' =>> array (
    'id' => '001',
    'math' => 70,
    'english' => 90),
 
  'becky' => array (
    'id' => '002',
    'math' => 95,
    'english' => 69),
 
  'matthew' => array (
    'id' => '003',
    'math' => 60,
    'english' => 70),
 
  'kim' => array (
    'id' => '004',
    'math' => 75,
    'english' => 89),
  'megan' => array (
    'id' => '005',
    'math' => 73,
    'english' => 60),
 
  'jason' => array (
    'id' => '006',
    'math' => 85,
    'english' => 76)
);
 
$i = 0;
// 配列の中の名前を出す
foreach($student as $key => $member){
 echo $key;
 if($i < count($student)-1){
  echo ',';
 }
 $i++;
}
 
// 区切りおよび改行
echo "<hr>
" . PHP_EOL;
 
//配列の中の名前を出す
echo join(",",array_keys($student)) . PHP_EOL;
 
echo "<hr>
" .PHP_EOL;
 
// List the students except for matthew (id = 003)
foreach($student as $key => $member){
 if($member['id'] != '003'){
 echo $key . PHP_EOL;
 }
}
 
// 配列の中身の表示
echo "<hr>
" . PHP_EOL;
print_r($student);
?>


0 件のコメント:

コメントを投稿