【发布时间】:2019-11-29 06:38:37
【问题描述】:
我正在尝试从文本字段中输入多个 url 作为输入,进入数组以提取一些数据。
这是我的代码
<form method="post">
<textarea name="urls[]" cols="150" rows="15" value=""></textarea>
<input type="submit" value="Get URLs" />
</form>
if (isset($_POST['urls']) && !empty($_POST['urls'])) {
// fetch data from specified url
foreach($_POST['urls'] as $key => $value){
$data = array($value);
$r = multiRequest($data);
}
}
foreach ($r as $key => $url){
$res = preg_match_all( "/[a-z0-9]+[_a-z0-9\.-]*[a-z0-9]+@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})/i",
$url, $matches);
if($res) {
foreach(array_unique($matches[0]) as $email) {
echo $email . "<br />";
}
} else {
echo "No data found.";
}
unset($value);
现在,如果我输入单个 url,www.example1.com,如果获取数据(电子邮件)。但如果我在表单中输入多个 url,它就不起作用(未找到数据)。
如果我在数组中手动定义 url
$data = array('www.example1.com', 'www.example2.com', 'www.example3.com');
我可以提取数据(电子邮件)。
如何处理多个条目?
【问题讨论】: