Я пытаюсь изменить скрипт для извлечения информации:
Есть страницы, например:
<ul class="tags">
<li><div class="tag"><a href="http://www.url1.com" title="url1">title 1</a></div></li>
<li><div class="tag"><a href="http://www.url2.com" title="url2">title 2</a></div></li>
</ul>
Я хотел бы получить название 1, название 2
У меня есть этот код:
$m=array();
preg_match_all("/<a href="(.*)" title="(.*)">(.*)<\/a>/i", $buff,$m);
$info['tags']=trim(strip_tags($m[3]));
$cats=array_map('trim',$cats);
$info['tags']=implode(',',$cats);
Но я получаю ошибки с trim и array_map.
Спасибо за вашу помощь.
Первая ошибка в вашем коде находится в 3-й строке:
$info['tags']=trim(strip_tags($m[3]));
Здесь для функции strip_tags
должна быть задана строка в качестве аргумента, но $m[3]
это массив. Быстрое исправление будет:
$info['tags']=array_map('strip_tags',array_map('trim',$m[3]));
$ Информацияarraysphppreg-match-alltrim сейчас:
arraysphppreg-match-alltrim знак равно> массив
(
[0] => название 1
[1] => название 2
)
[/ NOEDIT]
Чем применить функцию взрыва так:
$info['tags'] = implode(',', $info['tags']);
Ура, беа
Других решений пока нет …