Notice: Array to string conversion in ★★ on line ▲▲ Array

エラーメッセージNotice

エラー内容

 状態:-  閲覧数:4,028  投稿日:2015-03-11  更新日:2015-03-11  
「文字列変換した配列」を警告


エラー原因


配列を文字列変換したため
・文字列処理する箇所へ、期待に反して配列を渡すと、このエラーが発生する


エラー対応


対応案A.配列ではなく、文字列を渡す
対応案B.文字列処理ではなく、配列処理を実施

実際に遭遇した例 / 配列をechoで出力しようとした

 閲覧数:890 投稿日:2015-03-11 更新日:2016-01-22 

エラーメッセージ


Notice: Array to string conversion in ★★ on line ▲▲ Array


エラー発生箇所


echo $result;



エラー原因


配列を文字列として処理
・echo で出力可能なのは文字列
・配列は echoで出力できない

対応案A.配列ではなく、文字列を渡す

 閲覧数:845 投稿日:2015-03-11 更新日:2016-01-22 

対応案A


配列ではなく、文字列を渡す
・「配列そのもの」ではなく、「文字列である配列の要素」を指定

A-1.foreach
foreach($results['data'] as $result) {
   echo $result['type'], '<br>';
}



A-2.二次元配列目を直接指定
echo $results['data'][1]['type'];



A-3.json_encode
echo json_encode($result);


対応案B.文字列処理ではなく、配列処理を実施

 閲覧数:838 投稿日:2015-03-11 更新日:2016-01-22 

対応案B


文字列処理ではなく、配列処理を実施
・echoは文字列しか対応していないので、配列に対応している関数を指定

B-1.print_r
・print_r
print_r($result); 

・整形表示
echo '<pre>'; print_r($result); echo '</pre>';



B-2.var_dump
var_dump($result); 



Notice: Use of undefined constant name - assumed '★★' in ○○.php on line △△

Notice: Constant ★★ already defined in ■■ on line ◆◆

コメント投稿(ログインが必要)