Допустим, у меня есть следующий массив:
Array ( [1284487200] => Array ( [title] => first title [link] => http%3A%2F%2Fexample1.com ) [1261271380] => Array ( [title] => second title [link] => http%3A%2F%2Fexample2.com )
Я хочу напечатать массив следующим образом:
<a href="http://example1.com">first title - 1284487200</a><br> <a href="http://example2.com">second title - 1261271380</a><br>
Благодарим за любую идею!
ОБНОВЛЕНИЕ: два предоставленных ответа имеют ту же ошибку, что мой домен включен в ссылку, например. http://www.mydomain.com/http%3A%2F%example1.com
Как я могу это исправить?
(Самой) сложной частью является получение ключа первого массива измерений, это использование:
$key=>$data
в преддверии.
$ key представляет ключ от пройденного массива. $ data содержимое, в вашем примере $ data содержит второй размерный массив.
foreach( $array AS $key=>$data ) { echo '<a href="'.urldecode( $data['link'] ).'">'.$data['title'].' - '.$key.'</a><br>'; }
Подробнее о заявлении foreach: http://php.net/manual/en/control-structures.foreach.php
foreach ($array as $key => $entry) { echo "<a href=\"{$entry['link']}\">{$entry['title']} - {$key}</a><br>"; }
См .: http://php.net/manual/en/control-structures.foreach.php
Используйте цикл foreach
, $key
будет номером, а другая информация будет в $value
как массив. Я предполагаю, что вы захотите декодировать ссылку, используя urldecode()
:
foreach($arr_name as $key => $value){ $link = urldecode($value['link']); echo '<a href="' . $link . '">' . $key . ' - ' . $value['title'] . '</a><br>'; }