无法在另一个函数中打印链接

Unable to print links in another function

我在 php 中编写了一些代码,以从维基百科的主页中抓取一些更可取的 link。当我执行我的脚本时,links 相应地通过。

但是,此时我已经在我的脚本中定义了两个函数,以便了解如何将 links 从一个函数传递到另一个函数。现在,我的目标是在后一个函数中打印 links,但它只打印第一个 link 而没有其他内容。

如果我只使用这个函数 fetch_wiki_links(),我可以获得几个 link,但是当我尝试在 get_links_in_ano_func() 中打印相同的内容时,它会打印第一个 link ] 只要。

即使我使用了第二个功能,我如何才能全部获得它们?

这是我到目前为止写的:

include("simple_html_dom.php");
$prefix = "https://en.wikipedia.org";
function fetch_wiki_links($prefix)
{
    $weblink = "https://en.wikipedia.org/wiki/Main_Page";
    $htmldoc   = file_get_html($weblink);
    foreach ($htmldoc->find("a[href^='/wiki/']") as $a) {
        $links          = $a->href . '<br>';
        $absolute_links = $prefix . $links;
        return $absolute_links;
    }
}
function get_links_in_ano_func($absolute_links)
{
    echo $absolute_links;
}
$items = fetch_wiki_links($prefix);
get_links_in_ano_func($items);

您的函数在第一次迭代时返回了值。您将需要这样的东西:

function fetch_wiki_links($prefix)
{
    $weblink = "https://en.wikipedia.org/wiki/Main_Page";
    $htmldoc   = file_get_html($weblink);
    $absolute_links = array();
    foreach ($htmldoc->find("a[href^='/wiki/']") as $a) {
        $links          = $a->href . '<br>';
        $absolute_links []= $prefix . $links;
    }
    return implode("\n", $absolute_links);
}