PHPでin_array() expects parameter 2 to be arrayというエラーが出たとき

harada 383views 更新:2016年8月17日

PHPで「Warning: in_array() expects parameter 2 to be array, string given in〜」というエラーが出た時は、配列じゃない変数を配列として処理しているからのようで、以下の修正をすることで直りました。

例:以下の行でエラーが出ていた場合

<?php if ($base_parking || isset($storage_space) && in_array('物置', $storage_space)) { ?>

以下のように修正することでエラーが解消されました。

<?php if ($base_parking || isset($storage_space) && in_array('物置', (array)$storage_space)) { ?>

参考:「Invalid argument supplied for foreach() …」エラーの対処法

ログイン / 新規登録してコメントする

このソースコードをストックして後で利用したり、作業に利用したソースコードをまとめることができます。

こちらもお役に立つかもしれません