php 循环函数中的多个 returns

multiple returns in a php loop function

我正在构建一个网络爬虫,我在其中循环遍历多个页面,每页 20 个项目。

我可以return这个还是应该使用echo?我现在使用 echo 但想切换到 return 以更好地控制每个文件的输出(在多个页面中使用此功能)。

function function1(){
    $link = $url;
    $url_items = $url2;
    for($pageNr=1; $pageNr<11; $pageNr++){
        $client = new \GuzzleHttp\Client(['base_uri' => $link]);
        $response = $client->request('GET', '/zoeken', [
            'query' => [
                'page' => $pageNr
            ]
        ]);
        if($response->getStatusCode() === 200){
            echo "Pagina: " . $pageNr . "<br/>";
            for($item = 1; $item <=20; $item++){
                $url = $url . "?" . $pageNr;
                $html = file_get_html($url);
                if(!empty($html)){
                    $content = $html->find("#resultitem-$item", 0)->find('.item-description2', 0)->find('.title', 0)->find('a', 0)->plaintext;
                    $content_url = $html->find("#resultitem-$item", 0)->find('.item-description2', 0)->find('.title', 0)->find('a', 0)->getAttribute('href', 0);
                    if(!empty($content)){
                        echo $item . ". <a href='" . $url_items . $content_url .  "'>" . $content ."</a><br/>";
                    }
                }
            }
        }
        sleep(2);
    }
}

我正在回显 link,但我只想要值,以便我可以在我的其他页面中控制它。

我想 return $content$content_url,如何将其更改为 return?

创建一个数组然后return它。

这里有一个例子:

function function1(){
    $link = $url;
    $url_items = $url2;
    $dataArr = array();
    for($pageNr=1; $pageNr<11; $pageNr++){
        $client = new \GuzzleHttp\Client(['base_uri' => $link]);
        $response = $client->request('GET', '/zoeken', [
            'query' => [
                'page' => $pageNr
            ]
        ]);
        if($response->getStatusCode() === 200){
            $data['pageNo'] = $pageNr;
            for($item = 1; $item <=20; $item++){
                $url = $url . "?" . $pageNr;
                $html = file_get_html($url);
                if(!empty($html)){
                    $content = $html->find("#resultitem-$item", 0)->find('.item-description2', 0)->find('.title', 0)->find('a', 0)->plaintext;
                    $content_url = $html->find("#resultitem-$item", 0)->find('.item-description2', 0)->find('.title', 0)->find('a', 0)->getAttribute('href', 0);
                    if(!empty($content)){
                        $data['content']        = $content;
                        $data['content_url']    = $content_url;
                        array_push($dataArr,$data);
                    }
                }
            }
        }
        sleep(2);
    }
    return $dataArr;
}