PHPでforeach文を使ったときに、
1 |
Warning: Invalid argument supplied for foreach() |
というエラーが出た場合の対処法です。
考えられる原因は
1.配列が空
2.型が配列ではない
の2つです。
1 2 3 4 5 |
if (is_array($array)) { foreach ($array as $value) { //処理文 } } |
配列でない文字列などを配列にするには、配列にキャストする方法があります。
1 2 |
$var='テスト'; $array=(array)$var; |
(array)を変数の前につけるのがポイントです。
配列で無いものを通してしまいたい場合は、この処理を噛ませると良いでしょう。
人気記事一覧
- MySQL 最大の値・最新の日付データを1つ抽出する方法(MAX)
- [CakePHP] XformHelperの使い方
- Linux: スワップファイル(swp)の削除方法
- HTMLのForm methodとactionについて
- PHPでカンマ区切りデータを配列に入れる方法 (explode)
- [エラー対処] failed to open stream: No such file or directory
- [vsftp] FileZillaから接続できない場合の対処法
- PHP5.1→PHP5.3へバージョンアップする方法(CentOS)
- [CSS]ブロック要素(div)の高さを、内部のfloat要素に合わせて自動調整する
- PHPでテキストを1行ずつ読み込む方法(file_get_contents,explode)