2014-11-06 17 views
0

我正在制作一个抓取电子邮件地址的URL的抓取工具。但不知何故,它缺少电子邮件地址,并返回空数组的地方。PHP履带失踪命中并且空的命中

代码:

function curl($url){ 
     $ch = curl_init(); 
     curl_setopt($ch, CURLOPT_URL,$url); 
     curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); 
     $return = curl_exec($ch); 
     curl_close ($ch); 
     return $return; 
    } 
    if(isset($_POST['go'])) 
    { 
     if($_POST['url'] != ''){ 
     $data = curl($_POST['url']); 
     preg_match("/[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})/i", $data, $matches); 
     echo "<h1>Handmatig gezocht</h1><hr>"; 
     $tely = count($matches); 
     for ($y=0; $y<=$tely; $y++) 
     { 
      if(!empty($matches[$y])) 
      { 
       echo $matches[$y] ."<br>"; 
      } 
      else 
      { 
       echo "Lege array :(<br>"; 
      } 
     } 
     echo "<hr>"; 

     } 
    } 

我做了一个简单的网页在我的本地主机上有5封电子邮件

<p>[email protected]</p> 
    <p>[email protected]</p> 
    <p>[email protected]</p> 
    <p>[email protected]</p> 
    <p>[email protected]</p> 

和阵列我从我的履带式回看起来喜欢这样的:

Array ([0] => [email protected] [1] => [2] => [3] => .nl) 

回答