【PHP】 count()でWarning発生
所沢でWebサイト制作や欧州輸入品を販売しているRishunTradingです。今回は、あるお客様環境でPHPでWarningが出ていたので、その原因と対処法の備忘録です。
以下のエラーを検出。
Warning: count(): Parameter must be an array or an object that implements Countable in XXXXX(*1) line XXXX(*2)
*1 は該当ソースの位置
*2 は、検出した行数です。
調べてみると、原因はPHP7.2から配列の要素を数えるcount()関数で対象の変数がNULLの場合に、警告を出すよう変更があった模様。
該当箇所
1 2 3 4 | $terms = get_the_terms($post->ID, '(タクソノミー名)'); if(count($terms) == 1){ //$termsがnullの場合、Warningとなる。 : } |
通常なら、以下のように空っぽかどうかをチェックしてから実行すれば良いが、
1 2 3 | if(!empty($terms)){ : } |
今回は配列チェックで良いかなと思ったので、配列チェックで対応。
1 2 3 | if(is_array($terms)){ : } |
今回は以上です。
WEB DESIGN全てお任せ!ホームページ制作
RishunTradingでは、日本にはないコンセプトや高いデザイン性をもったヨーロッパ製品の輸入販売、及び、Webサイト制作事業などをおこなっております。
「全てお任せ!ホームページ制作」は、ドメイン取得からサーバー設定、レスポンシブルデザイン(スマホ、タブレット対応)、SEO対策がすべて含まれたお得なホームページを制作するサービス商品です。
運用開始後に「Webサイト運用管理サービス(保守)」と組み合わせて購入しますと、メンテナンス、更新も含めてすべて弊社で実施しますので、お客様は安心して本業に集中する事ができます。
しかもなんと、「全てお任せ!ホームページ制作」は、¥100,000!で提供しております。
本業が忙しい中小企業様に大変ご好評を頂いている商品です。
独自ドメイン取得
サーバー開設&設定
レイアウト設計
レスポンシブルデザイン
(*1)検索エンジン最適化
(SEO対策)場所Maps
お問い合わせフォーム
SSL化
各種SNS連携
運用マニュアル