- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Маркетинг для шоколадной фабрики. На 34% выше средний чек
Через устранение узких мест
Оксана Мамчуева
В 2023 году Google заблокировал более 170 млн фальшивых отзывов на Картах
Это на 45% больше, чем в 2022 году
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Подскажите как зациклит, или может все не верно?
По такой конструкции работает. Но парсится только одна строчка. А их на странице больше.
$html = file_get_contents ("страничка");if (preg_match('#<div class=\"repere\">(.*?)</div>#',$html, $nom))
if (preg_match('#<div class=\"prsansprremp\">(.*?)</div>#',$html, $art))
if (preg_match('#<div class=\"coef\">(.*?)</div>#',$html, $kol))
if (preg_match('#<td class=\"coldesi\"><div class=\"desi\">(.*?)</div>#',$html, $opi))
if (preg_match('#<div class=\"descomp\">(.*?)</div>#',$html, $opin))
if (preg_match('#<div class=\"pravecprremp\">(.*?)</div>#',$html, $art))
if (preg_match('#<div class=\"prremp\">(.*?)</div>#',$html, $zart))
echo $nom[1];
echo $art[1];
echo $kol[1];
echo $opi[1];
echo $opin[1];
echo $zart[1];
вместо
preg_match
надо preg_match_all
Ну далее уже перебирать полученный массив данных.
Примерно понял но если заменить
preg_match
на
preg_match_all
то все значения
Array
Примерно понял но если заменить
preg_match
на
preg_match_all
то все значения
Array
Правильно я же сказал, теперь вам нужно через foreach перебирать и выводит эти значения. Они же теперь в массиве ВСЕ хранятся.
Что то мне подсказывает что я не прав 🙅
выводится только <div class="repere">01</div>01
А вот так вроде заработало
$html = file_get_contents ("страничка");preg_match_all('#<div class=\"repere\">(.*?)</div>#',$html, $matches, PREG_SET_ORDER);
foreach ($matches as $nomq) {
echo $nomq[0];
}
foreach ($matches[0] as $nomq) {
echo $nomq;
}
LEOnidUKG
Не идет, только один заход делает.
А тот вариант который выше привел выводит все что надо, только меня смущает вот эта конструкция
Выводит следующее
А должна по идее выводить 01
Print_r($matches);
[0] на [1] и норм стало )
А подскажите как эти данные ($nom[1] и $art[1]) запихнуть в таблицу?
пока у меня так
Чувствую объединить цикл надо?
Примерно должно получиться
<tr>
<td>$nom[1]</td>
<td>$art[1]</td>
</tr>
<tr>
<td>$nom[1]</td>
<td>$art[1]</td>
</tr>
Дошло как сделать.
preg_match_all('#<td>(.*?)<\/td><td>(.*?)<\/td><td>(.*?)<\/td><td>(.*?)<div class=\"obsligne\">#', $htmlnew, $matches, PREG_SET_ORDER);
foreach ($matches as $nom) {
echo "<tr>\n\t<td>";
echo $nom[1];
echo '</td>
<td><a href="/art?var=';
echo $nom[2] . '">';
echo $nom[2];
echo "</a></td>\n\t<td>";
echo $nom[3];
echo "</td>\n\t<td width=\"70%\">";
echo $nom[4];
echo "</td>\n</tr>\n";
}
Но теперь другая проблема.
Есть строчка 1
и строчка 2 И Данные 2 должны служить ссылкой.Если строчка 1 нормально получается ссылкой, то строчка два получается в виде
Чувствую должно быть что то типо такого:$nom[2][1]
Но как пока не соображу 🙅