-1

この質問を更新したい:カレンダーに PHP foreach コードを設定する

奇妙な理由で問題が再発し、foreach に無効な引数が指定されていると表示されます。奇妙なのは、私のローカルホスト Web サイトで問題なく動作することです。

その結果、コードは入力されたカレンダーを表示するはずです。私のローカルホストサーバーでは動作しますが、ウェブサイトではオンラインではありません。よくわかりません。

これにより、私のローカルホストサーバーで修正されました。

foreach(array_merge(array_values($history), array_values($events)) as $event)

しかし、ウェブサイトをオンラインにすると、クロムは次のように表示します。

<b>Warning</b>:  array_values() [<a href='function.array-values'>function.array-values</a>]: The argument should be an array in <b>/home/flyeurov/public_html/lib/skins/flyeuro/events/events_index.tpl</b> on line <b>30</b>
<b>Warning</b>:  array_merge() [<a href='function.array-merge'>function.array-merge</a>]: Argument #2 is not an array in <b>/home/flyeurov/public_html/lib/skins/flyeuro/events/events_index.tpl</b> on line <b>30</b>
<b>Warning</b>:  Invalid argument supplied for foreach() in <b>/home/flyeurov/public_html/lib/skins/flyeuro/events/events_index.tpl</b> on line <b>30</b><br />

配列 $history と $events が動作することが確認されています。

4

1 に答える 1

2

$historyまたはは配列ではないため、 array_values$eventsは配列を返さず、array_merge も配列を返さないため、foreach ループで別の警告が発生します。

両方の変数が実際に配列であり、スカラー値またはオブジェクトでない場合は、var_dump で確認してください

于 2013-02-18T22:43:36.307 に答える