【zendframework】行の要素を一行ずつ巡回する方法

ここ最近phpでsqlに触れる機会が少しあったので、せっかくなので配列に一行ずつアクセスする

処理を勉強がてらブログに残していきます。

まずテーブルを指定して、行を配列の要素として返すにはtoArray()メソッドを使います。

toArray()メソッドは、テーブルにある一つの行を配列の要素として持たせることができるメソッドで

カラムと値はkey=>valueの形で連想配列として扱われます。

 

</pre>
$Tables = new Tables();
$rowset = $Tables->fetchAll();

$rowsetArray = $rowset->toArray();

$rowCount = 1;
foreach ($rowsetArray as $rowArray) {
echo "row #$rowCount:\n";
foreach ($rowArray as $column => $value) {
echo "\t$column => $value\n";
}
++$rowCount;
echo "\n";
}
<pre>

 

一つ目のforeachで行を一つずつ見ていき、ネストされたforeachでは行のカラムの要素を一つずつ

見て一つずつ出力しているのが分かります。

 

これを上手く使えば、全列にアクセスして該当した値に対して指定した数値以下の値を書き換える・削除する

といった柔軟な動きを降り入れることができるのでキホンとして覚えておきたいですね。

 

もう少しフレームワークの動きとsqlの基礎が分かってきたらもう少し掘り下げていじってみたいと思います。

>株式会社シーポイントラボ

株式会社シーポイントラボ

TEL:053-543-9889
営業時間:9:00~18:00(月〜金)
住所:〒432-8003
   静岡県浜松市中央区和地山3-1-7
   浜松イノベーションキューブ 315
※ご来社の際はインターホンで「316」をお呼びください

CTR IMG