在我的foreach循环中显示'Array'

时间:2015-05-04 00:27:59

标签: php arrays

出于某种原因,当我尝试使用foreach来回显数组中的值时,我得到了'array'这个词作为输出(有2个值)。如果我在数组中使用print_r,这些显示正常,所以我知道它们在那里。我也尝试使用列表,但只显示第一个值,后面没有任何内容。

它已经很晚了所以它可能是非常愚蠢的东西!提前致谢

<?php

$crawl_url = "./emails.php";

function get_email($url) {
    $input = @file_get_contents($url);
    $regexp = '/[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b/i';
    preg_match_all($regexp, $input, $matches);

    if (empty($input)) {
        echo "No email addresses found";

    }   
    else {
        foreach($matches as $matches_values) {
            print $matches_values;
        }
    }
}

get_email($crawl_url);
echo '<br /> function complete';
?>

1 个答案:

答案 0 :(得分:3)

我认为你错过了$ match的0指数。

试试这个:

foreach($matches[0] as $matches_values) {
    print $matches_values;
}