Понял, спасибо! Есть какие то другие пути подняться вверх внутри данного цикла?
ну так оператор так в цикле и не будет работать -
Мне не нужно ВНУТРЬ, я хочу в пределах ЭТОГО ЖЕ цикла подняться выше.
Понятно что готу плохо и т.п. Но почему не срабатывает?
У меня сейчас 25 000 медицинского трафика в сутки, РСЯ насыпает 500-700 руб. в среднем с 6-ти блоков)) А вчера выдал целых 837 руб !
С 35.000мед трафа 2 блока Адсенс приносят 40$ (3000 р). РСЯ снял уже как год... это себя не уважать держать эти блоки когда они так в наглую воруют.
Сюда
curl_setopt($ch, CURLOPT_POSTFIELDS, $array);
нужно отправлять строку, а не массив.
$ch = curl_init('https://www.immowelt.de/liste/getlistitems');curl_setopt($ch, CURLOPT_POST, 1);curl_setopt($ch, CURLOPT_POSTFIELDS, 'query=geoid%3D10814285250%26etype%3D2%26esr%3D1%26sort%3Drelevanz&offset=4&pageSize=4');curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);curl_setopt($ch, CURLOPT_HEADER, false);$html = curl_exec($ch);curl_close($ch);echo $html;
Не помогло... и туда можно отправлять массив https://www.php.net/manual/ru/function.curl-setopt.php
Этот параметр может быть передан как в качестве url-закодированной строки, наподобие 'para1=val1¶2=val2&...', так и в виде массива, ключами которого будут имена полей, а значениями - их содержимое.
ТС по ходу в вложенном цикле определял данные, но не обнулял буфер(переменную которую я обычно называю автобус), поэтому у него эти данные суммировались. Инкапсуляция тут никаким боком 🤔
Так и есть - переменные определялись внутри цикла и на каждой итерации писались в базу.
Странность для мня по сути вот в чем - если на данной итерации в переменную не приходило данных (парсер не находил инфы на странице), то я ожидал что переменная станет пустой, а она оставалось со значением из прошлой итерации.
придумал, отвечаю по традиции сам себе
$re = '~^(.*)((([А-ЯA-Z]|[А-ЯA-Z][\x27а-яa-z]{1,}|[А-ЯA-Z][\x27а-яa-z]{1,}\-([А-ЯA-Z][\x27а-яa-z]{1,}|(оглы)|(кызы)))\040[А-ЯA-Z][\x27а-яa-z]{1,}(\040[А-ЯA-Z][\x27а-яa-z]{1,})?))$~muU';$str = 'Усов Василий НиколаевичСмелянский Александр ЮрьевичОоо "МираторгБелгород" Прохоров Владимир ИвановичЯкушев Михаил ВячеславовичШильников Александр СергеевичСкляренко Виктор ВладимировичПопов Александр ИвановичКОЛХОЗА Товстяк Владимир ВасильевичБигас Анатолий СтепановичВысоцкий Николай СеменовичЧефранов Михаил ЭдуардовичЛИКВИДАТОР Помельников Юрий МихайловичОоо "Ук ПродимексСахар" Данькевич Григорий НиколаевичИСПОЛНЯЮЩИЙ ОБЯЗАННОСТИ ГЕНЕРАЛЬНОГО А Астахов Анатолий НиколаевичУправляющий Фоминов Василий ИвановичУправляющий Ретунский Алексей ИвановичБыковец Людмила СергеевнаЖабин Сергей ВикторовичКамолин Александр ВалерьевичШколлер Роман АлександровичГоловин Максим Валентинович';$subst = '$2';$result = preg_replace($re, $subst, $str);echo "The result of the substitution is ".$result;
Смотреть вариант 1.
Прописал перед определением каждой переменной в цикле присвоение ей пустоты (очищаю каждую переменную при итерации) и все глюки пропали.
Было так
$full_name = addslashes(trim($pq->find('.c2m')->find('p')->find('a:eq(0)')->text()));
стало так
$full_name = '';$full_name = addslashes(trim($pq->find('.c2m')->find('p')->find('a:eq(0)')->text()));
Тут два варианта:
Скрипт написал я. Значит описанное мной предположение невозможно? Переменные затираются при каждой итерации даже пустотой?