2011-04-24 24 views
1

我想通過一個像下面這樣的數組搜索pair2.php.net - 通過域搜索最有效的方法是什麼?帶條紋的循環foreach語句?如何通過尋找文本的多級別數組搜索(PHP)

Array 
(
    [0] => Array 
     (
      [host] => php.net 
      [type] => MX 
      [pri] => 5 
      [target] => pair2.php.net 
      [class] => IN 
      [ttl] => 6765 
     ) 

    [1] => Array 
     (
      [host] => php.net 
      [type] => A 
      [ip] => 64.246.30.37 
      [class] => IN 
      [ttl] => 8125 
     ) 

) 

這是我的工作代碼從第一個評論的建議 - 會不同的方式更有效?

$search = 'secureserver.net'; 

$x='no!'; 

foreach($result AS $array1) 
{ 
    foreach($array1 AS $array2) 
    { 
     if(stripos($array2,$search)) 
     { 
      $x='yes!'; 
     } 
    } 

} 
echo $x; 
+1

你可以使用嵌套的foreach循環。 – 2011-04-24 04:14:05

+0

它會一直在$ array [$ number] ['target']之下嗎? – afuzzyllama 2011-04-24 04:28:40

+0

不,因爲它並不總是在DNS中的MX,據我所知。搜索郵件域指標,我相信一些將在A記錄中,所以我認爲我需要搜索所有字段。 – 2011-04-24 04:30:56

回答

2

,你可以使用一個for循環,並使用 'in_array' 構建在PHP來尋找一個數組的值: -

in_array( 'pair2.php.net',$ sub_array );

相關問題