@paulvales

Как работает in_array в foreach?

Здравствуйте. делаю парсер с помощью simple dom html.
//получили список артикулов строкой - преобразуем в массив 
$articles=explode("\n", $_POST["art"]);
//урл для парсинга
$html = file_get_html($_POST["url"]);
//перебор ссылок
foreach ($html->find('a.productLink') as $e) {
//получение непосредственно ссылки
$e=$e->href;
//в ссылке есть артикул, убираем все кроме него
$skuhref=preg_replace("/\D/","",$e);
//если в артикулах присутствует такая комбинация цифр то делай
if (in_array($skuhref, $articles)) {
...действие....

Но не работает, вводил два артикула, вывел только последний, ввожу 3 артикула ничего не выводит.
P.S. все артикулы которые вводил точно есть в ссылках
  • Вопрос задан
  • 200 просмотров
Пригласить эксперта
Ответы на вопрос 1
dzheka3d
@dzheka3d
Предположу, что возможно, в ссылке есть цифры кроме тех, которые у вас равны артиклю в итоге при preg_replace они соединяются в одно целое, что не идентично тем артиклям, что вы вводите.
Сделаейте вывод $skuhref
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
от 300 000 до 500 000 ₽
07 мая 2024, в 15:47
12000 руб./за проект
07 мая 2024, в 15:10
1500 руб./в час
07 мая 2024, в 15:07
1500 руб./в час