環境
- php7.2
事象
error_logに、以下のワーニングが出力される。
PHP Warning: count(): Parameter must be an array or an object that implements Countable in
原因
以前までのバージョンのphpでは、
配列(NULL)
は0を返していたが、
php7.2からは、
ワーニングを出すよ。
配列または、カウントできるObjectじゃないとだめだよ。
とのこと。
対応
配列か、カウントできるObjectの場合のみ処理するようにif文を追加した。
if(is_array(変数){
処理
}
参考にしたサイト
![](https://growcal.jp/wp-content/uploads/2019/03/warning.jpg)
WordPressでcount():phpの警告が出てきた。PHP7.2での仕様変更が原因かも。Warning: count(): Parameter must be an array or an object that implements Countable in 【ファイルパス】/wp-includes/post-template.php on line 284
Warning: count(): Parameter must be an array or an object that implements Countable in 【ファイルパス】/wp-includes/post-templ
![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png?ixlib=rb-4.0.0&w=1200&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9UEhQNy4yJUUzJTgxJUFFY291bnQlRTMlODElQUIlRTMlODMlOEYlRTMlODMlOUUlRTMlODElQTMlRTMlODElOUYlRTglQTklQjEmdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT01NiZ0eHQtY2xpcD1lbGxpcHNpcyZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPWI3ZDIyOWUyOWY0ODIyNjg5MGYyMTdhOTU1Nzk2YjVm&mark-x=142&mark-y=112&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwbWFzYWtpLW9nYXdhJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz1kNzlhNjA5ZjJjYzUyMmI1MmZiODYzNTE0YTJhNjA0MA&blend-x=142&blend-y=491&blend-mode=normal&s=b54a482b56ac77a3d0ec17b5a434f22c)
PHP7.2のcountにハマった話 - Qiita
最近、開発環境のPHPのバージョンを5.6→7.2に変更しました。PHP5.6 + CakePHP3 + Apache2.2のECサービスからAMP並のTTFBを実現するまでこちらの記事にあるよ…
コメント