Преобразовать строку в массив и выполнить foreach, codeigniter

#php #arrays #string #codeigniter #foreach

#php #массивы #строка #codeigniter #foreach

Вопрос:

Я хотел бы получить некоторую помощь в преобразовании строки в массив и выполнении foreach для данных массива.

В настоящее время, на мой взгляд, я повторяю свою строку <?php echo $p['tags']; ?>

и это дает мне следующие данные news, latest

Я хотел бы выполнить foreach для этих данных, чтобы я мог обернуть значения в <a href=""></a>

Как это делается? Каков наилучший метод?

Ответ №1:

Разбить их на массив:

 <?php

$all_tags = explode( ',' , $p['tags'] );

foreach ( $all_tags as $one_tag ){
    echo '<a href="#">' . $one_tag . '</a>';
}
 

Функция explode() разбивает строку с помощью разделителя (в данном случае запятой ‘,’), и каждый элемент передается в массив.

Ответ №2:

Я не уверен, что правильно понимаю, о чем вы спрашиваете. Это то, что вы хотите?

 $var = 'news, lastest';
$tmp = explode(', ', $var);

$result = '<a href="#">'.implode('</a>, <a href="#">', $tmp).'</a>';

var_dump($result);
// string(42) "<a href="#">news</a>, <a href="#">lastest</a>"