PHPでのforeach文
に処理が入らないケースに関してつまづいたので記載します。
関連記事はこちら
どんなコードで動かないか?
ズバリ下のコードです。
get_results('SELECT * FROM QUESTIONARY', ARRAY_A); echo count($result); // ここから下はデータがある時のみ表示 foreach($result as $key => $data) { echo ''; echo ' '; } ?>' . $data->question . ' '; echo '' . $data->answer1 . ' '; echo '' . $data->answer2 . ' '; echo '' . $data->answer3 . ' '; echo '' . $data->answer4 . ' '; echo '' . $data->answer5 . ' '; echo '
$resultの中には配列が入っていることを確認しているのですが、いかんせん。。。動かない。。。
Fix(解決)
foreach文の中の処理が昨日していなかったようです。。。
echo "Hello";
と処理を記載したところ問題なく処理が動きました。。。
つまり、$data->プロパティ名
の呼び出し方が悪い。
$data['プロパティ名']
の形で実装するのが正しいということでした。
修正結果
具体的には以下のようなコードです。
get_results('SELECT * FROM QUESTIONARY', ARRAY_A); // ここから下はデータがある時のみ表示 foreach($result as $key => $data) { echo ''; echo ' '; } ?>' . $data['question'] . ' '; echo '' . $data['answer1'] . ' '; echo '' . $data['answer2'] . ' '; echo '' . $data['answer3'] . ' '; echo '' . $data['answer4'] . ' '; echo '' . $data['answer5'] . ' '; echo '
でわでわ。。。
関連ページ
- WordPress プラグイン作成〜DBを使用する〜
- PHP PDO 〜MySQLにアクセスする〜
- PHP Ajax 〜DBに登録したデータを受信する〜
- Google Maps API PHP連携 〜マップ情報をDBに登録する〜
- PHP Image File 〜iPhoneやAndroidでの画像送受信の問題〜
- AngularJS Routing 〜PHPをWeb APIにする〜
- WordPress PHPカスタム〜根本的に見た目を変える〜
- WordPress PHPカスタム〜根本的に見た目を変える2〜
- Eclipse PHPプラグイン 〜ElipseでWordPress環境を構築〜
- WordPress テスト実装 〜heade-test.phpを表示〜
- AngularJS + PHP 〜WordPressと連携する〜
- AngularJS + PHP 〜AngularJSの実装〜
- AngularJS + PHP 〜AngularJSの実装2〜
- WordPress 処理解析 ~index.phpを眺める~
- WordPress Plugin NewStatPress ~アクセス解析プラグインAPIを使う~
- WordPress 処理解析 ~ログイン処理を調べる~
- WordPressカスタム〜アンケートボタンを追加する(設計)〜
- WordPressカスタム〜プラグインの作成〜
- WordPressカスタム〜ダッシュボードのプラグイン画面作成〜
- WordPressカスタム〜ダッシュボードのプラグイン画面作成2〜
- WordPressカスタム〜ダッシュボードのプラグイン画面作成3〜
- WordPress プラグイン作成〜アンケート作成プラグインを作る〜