出于某种原因,当我尝试使用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';
?>
答案 0 :(得分:3)
我认为你错过了$ match的0指数。
试试这个:
foreach($matches[0] as $matches_values) {
print $matches_values;
}