Отказ от показа infinte loop выше php 7.0? - PullRequest
0 голосов
/ 01 марта 2019
 $url = 'https://site';
copy('https://site',  \Yii::getAlias('@webroot').'/scrapping.html');
$response=\common\models\helpers\Scrapping\SimpleHtmlDom::fileGetHtml(\Yii::getAlias('@webroot').'/scrapping.html');
var_dump($response);
exit();

Я использую keltstr\simplehtmldom\ extension.

Вот что я делаю, получаю данные и сохраняю их на моем сервере и извлекаю из моего локального файла. Он выполняется бесконечноЦикл выше php 7.0, но работает нормально в php 7.0. Почему это происходит в версии php?Та же ошибка, когда я непосредственно использую URL в этой функции

// $response =   \keltstr\simplehtmldom\SimpleHTMLDom::fileGetHtml($url);

Вот вывод ошибки рекурсии enter image description here

1 Ответ

0 голосов
/ 05 марта 2019

Здесь в принципе вообще нет проблем с библиотекой

Проблема здесь для цикла infinte заключается только в var_dump ();

Here is the code
$response = file_get_html(url);
var_dump($response);
Here you will see the infinte loop in some server

Так что, пожалуйста, сделайте оставшуюся часть теста безvar_dump ();В коде уже есть ответ.

И одна вещь, которую вам нужно позаботиться ниже php 7, вам нужно добавить 0 в качестве смещения

 foreach ($response->find('article',0) as $article) {

выше php 7, код будет

foreach ($response->find('article') as $article) {
...