猿でもわかるPHP配列

f:id:oresamaquest:20170403123820j:plain

PHPの配列は重要!!

PHPにおいて配列は非常に重要です。
なぜならデータベースのデータをSQLでひっぱってくるというときなどは配列を使ってデータを展開する必要があるからです。
難しいポイントですが基礎をしっかり身に着けておきたいところです。

PHPの配列は以下のように書きます。

<?php

$data=array(6,8,2,1,5); //$data[0]~$data[4]までが生成される

echo $data[0]; //出力結果:6

?>

問題1:上記の配列の数値を全て合計して表示してください。

答え

<?php

$data=array(6,8,2,1,5); 

for($i=0;$i<5;$i++){

    $ans=$ans+$data[$i];

}

echo $ans;

?>   

これと同じことをforeach文で書くと次のようになります。

<?php

<?php

$data=array(6,8,2,1,5); 

foreach($data as $num){

    $ans=$ans+$num;

}

echo $ans;

?>   

foreach(配列 as 変数)と書くことで、配列の値が1つずつ変数に入っていきます。配列の値の数だけループが行われます。

問題2:下記の配列をforeachを使って以下のように表示してください。

$ken=array(‘宮崎’,‘福岡’,‘長崎’);

<ul>

<li>宮崎</li>
<li>福岡</li>
<li>長崎</li>

</ul>

答え

<?php

$ken=array('宮崎','福岡','長崎'); 

echo "<ul>";

foreach($ken as $str){

    echo "<li> $str </li>";

}

echo "</ul>";

?>

連想配列

連想配列とは普通の配列とは違って、キー(添え字)が数値ではなく文字列の配列です。
例えば、$data[0]=100;の0の部分が$data[‘りんご’]=100;のように0がりんごという文字列になります。 連想配列は以下のように書きます。

$data=array(‘りんご’=>100,‘みかん’=>150,‘いちご’=>200);

連想配列を表示する場合はforeachを使います。

<?php

$data=array('りんご'=>100,'みかん'=>150,'いちご'=>200); 

foreach($data as $tanka){

    echo $tanka."<br>";

}

//出力結果
//100
//150
//200

?>

この書き方だと配列の要素しか表示されませんが、りんご、みかん、いちごなどのキーも表示したい場合は以下のように書きます。

<?php

$data=array('りんご'=>100,'みかん'=>150,'いちご'=>200); 

foreach($data as $key=>$tanka){

    echo "$key$tanka 円<br>";

}


//出力結果
//りんごは100円
//みかんは150円
//いちごは200円

?>

問題3:配列を使って以下のようなリストを作成してください。

$data=array(‘熊本’=>‘熊本,'兵庫’=>‘姫路,'滋賀’=>‘彦根);

<ul>

<li>熊本県の熊本城</li>
<li>兵庫県の姫路城</li>
<li>滋賀県の彦根城</li>

</ul>

答え

<?php

$data=array('熊本'=>'熊本','兵庫'=>'姫路','滋賀'=>'彦根');

echo "<ul>";

foreach($data as $key=>$siro){

    echo "<li> $key$siro 城</li><br>";

}

echo "</ul>";

//出力結果
//・熊本県の熊本城
//・兵庫県の姫路城
//・滋賀県の彦根城

?>