Блог/explode в массив

Передача вывода функции explode в массив

Автор: Кудашев Сергей

Очередная заметка про использование PHP в ModX. Столкнулся с необходимостью получения массива из множества TV, решения в лоб не нашел. В итоге пришел к конструкции с функциями array_merge(), которая сливает массивы, и explode(), которая позволяет получать массив по разделителю. Приведенный пример можно использовать для множественной обработки TV (как с уставноленным разделителем, так и без установленного разделителя).

Итак, как будет производится обработка. У нас есть TV, например содержащая тэги материала, разделенные запятыми. Допустим у нас есть 3 документа (в нашем примере это $tv1,$tv2,$tv3, однако в реальности это будет массив данных из TV полученных из базы данных). Наша задача получить на выходе массив содержащий все значения, переданные в обработку. Вот какой код можно для этого использовать:

$tv1 = 'html';
$tv2 = 'php,parse';
$tv3 = 'html,css';

$out = array();
foreach(array($tv1,$tv2,$tv3) as $cur) {
	$out = array_merge(explode(',',$cur),$out);
}

var_dump($out);

В дальнейшем мы можем легко уникализировать значения в массиве $out, получив полный перечень уникальных тэгов из TV различных документов.

Тэги: PHP, MODX
Просмотров: 1334
Комментариев:

Комментарии (0)