Как изменить порядок массива фильтров DomCrawler? - PullRequest
0 голосов
/ 30 сентября 2019

Я бы хотел изменить порядок, в котором я перебираю найденные узлы, с помощью функции фильтра. Проблема в том, что результат фильтра Crawler на самом деле не является массивом. Функция shuffle не работает для этого фрагмента кода:

    $nodes = $this->crawler->filter('.imgpt');
    //randomize the order of the nodes, to get a random image each time
    if ($randomize) {
    shuffle($nodes);
    }
    //go through all the nodes with class "imgpt"
    foreach ($nodes as $node) {
    //
    }

Я, конечно, получаю ошибку:

"Невозможно использовать объект типа Symfony \ Component \ DomCrawler\ Гусеничный как массив ".

Я понимаю это, но есть ли способ в любом случае рандомизировать порядок?

...