@Zimaell

Как правильно вытягивать нужные элементы?

Вопрос о том как правильно вытягивать элементы, вот к примеру мне нужно вытянуть с страницы цену
/*
часть исходного кода 
<span id="priceblock_dealprice" class="a-size-medium a-color-price priceBlockDealPriceString">13,49&nbsp;€</span>
*/
... curl_multi_init()...
foreach($channels as $url=>$ch){
  $content=trim(curl_multi_getcontent($ch));
  if(preg_match("/\<span id\=\"priceblock\_dealprice\"/i",$content)){
     $a=explode('<span id="priceblock_dealprice"',$content);
     $a2=explode('</span>',$a[1]);
     $a3=explode('>',$a2[0]);
     $price=trim(strip_tags($a3[1]));
     $a=explode(' ',$price);
     $cost=$a[0];
     echo $cost;
     }

Скажу сразу, я понимаю что это выглядит очень страшно, хоть оно и работает...
Подскажите как правильно данные элементы вытягивать, каким способом, нужно ли все помещать в $content или как-то можно по другому, просто когда в мульти несколько сотен сразу то оперативу кушает хорошо, в общем что посоветуете?
  • Вопрос задан
  • 124 просмотра
Решения вопроса 1
@Enj0y
Не правильно делаете, всё уже до вас придумано, и при том в PHP есть 2, если не ошибаюсь, нативных парсера HTML, XPath например.

Я использую https://sourceforge.net/projects/simplehtmldom/
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
l3ftoverz
@l3ftoverz Куратор тега PHP
Люблю Финский металкор
Используй любую библиотеку для работы с XML подобным кодом, как с DOM деревом, это очень удобно и избавляет от кучи бесполезного кода.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы