Итак, я делаю плагин для вывода данных facebook на веб-сайты Wordpress, так как я делаю это, получая данные из facebook через график api в формате json, а затем декодируя данные json в php чтобы получить массив, это полный массив, который возвращается, когда я переменная дамп JSON декодируются данные:Неожиданный вывод при прохождении через массив
array
'data' =>
array
0 =>
array
'name' => string '' (length=21)
'start_time' => string '' (length=19)
'end_time' => string '' (length=19)
'location' => string '' (length=11)
'id' => string '' (length=15)
'rsvp_status' => string '' (length=9)
1 =>
array
'name' => string '' (length=27)
'start_time' => string '' (length=19)
'end_time' => string '' (length=19)
'id' => string '' (length=15)
'rsvp_status' => string '' (length=9)
2 =>
array
'name' => string '' (length=35)
'start_time' => string '' (length=19)
'end_time' => string '' (length=19)
'location' => string '' (length=13)
'id' => string '' (length=15)
'rsvp_status' => string '' (length=9)
'paging' =>
array
'previous' => string '' (length=224)
'next' => string '' (length=211)
Теперь, так как это кратна одномерный массив Я использую несколько Еогеасп петли, чтобы получить в данных , как показано ниже:
foreach ($data as $data) {
foreach ($data as $data) { ?>
<div class="eventSegment">
<h3><?php echo $data['name']; ?></h3>
<p><?php echo strstr($data['start_time'], T, true); ?></p>
<a href="http://www.facebook.com/<?php echo $data['id']; ?>">
<img src="<?php echo $plugin_dir; ?>/images/rsvpfb.png" alt="RSVP on Facebook" class="RSVPfacebook" />
</a>
</div>
<?php
}
}
endif; } ?>
Messy Я знаю;), но я всегда в любом случае результат полностью прекрасен, за исключением двух блоков данных, которые не должны быть там, переменная $ data ['name'] соответствует «h» в обоих из них, там вообще нет даты, и их id просто «h» также, я в тупике от этого и не знаю, с чего начать поиск решения.
Спасибо так много, вы можете объяснить, почему 2 дополнительные элементы были появляются? Это помогло бы много :) –
С вашим attemp вы дважды зацикливаете свой массив, потому что у вас есть $ data в первом foreach, что во втором foreach одинаково. Как сказал @TV productions, не используйте одно и то же имя переменной в foreach, потому что вы перезапишете его самим. – djot