• いつもお世話になります。
    PHPの基礎的な事かもしれないのですが、ご教示お願いできれば幸いです。
    Lazy Blocksの繰り返しの中にセレクトを入れたいと思っているのですが、エラーが発生します。

    Warning: foreach() argument must be of type array|object, null given
    ...
    eval()'d code

    コードは以下です。

    <?php foreach($attributes['profile-list'] as $list):?>
        <dl class="c-definition__list">
          <dt class="c-definition__dt"><?php echo $list['skill-label'];?></dt>
          <dd class="c-definition__dd">
            <ul>
            <?php foreach($attributes['bulletpoints-list'] as $inner):?>
            <li><?php echo $inner['bulletpoints-item']; ?></li>
            <?php endforeach; ?>
            </ul>
          </dd>
        </dl>
      <!--END p-definition-list-->
      <?php endforeach; ?>

    nameの部分は何回か確認しているので間違いは無いとは思うのですが(とはいえ間違えていたらすみません)、何回かエラーを繰り返しながらforeachの入れ子に問題があるのではないかと思っています。
    ご教示お願いできれば幸いです。
    どうぞよろしくお願いします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • karaage23さん、こんにちは。

    foreach()でエラーが出ているのは間違いないので、まずは内側のforeach()を削除してエラーがでないか確認してみましょう。

    外側でエラーが出ていなければ内側のforeach()でしょうから、$attributes['bulletpoints-list']の内容をvar_dumpしてちゃんとarrayもしくはobjectになっているか確認してみましょう。外側でエラーが出ている場合も$attributes['profile-list']の内容を確認することは同じです。

    ご参考になれば。

    トピック投稿者 karaage23

    (@karaage23)

    @shokun0803 さん、ご回答ありがとうございます。
    おっしゃるとおり、foreach()のどの記述でエラーが出ているのか、きちんと配列で出力されているのか、切り分けるために、試してみようと思います。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「Lazy Blocksの繰り返しとセレクトの入れ子について」には新たに返信することはできません。