2013-07-19 47 views
2

因此,我有一個關聯的數組返回搜索引擎結果,它爲每個結果返回一個url,title和snippet,我想查找替換所有「http://和萬維網。」從每個網址開始。這是我到目前爲止已經試過了,吐出來的是URL,標題和摘要,但它並不能取代「HTTP://和www」,在關聯的數組中找到並替換

<?php 
foreach ($js->RESULT as $item) 
    { 
     $blekkoArray[$i]['url'] = ($item->{'url'});   
     $blekkoArray[$i]['title'] = ($item->{'url_title'}); 
     $blekkoArray[$i]['snippet'] = ($item->{'snippet'}); 
     $i++; 
    } 

    $find = array ('http://','www.'); 
    $replace = array ('',''); 

    $new_blekkoArray = str_replace ($find, $replace, $blekkoArray); 

    print_r ($new_blekkoArray); 
?> 

我有點的noob在PHP任何人都可以幫忙。來自愛爾蘭 問候

+0

str_replace函數可以採取的陣列,但它不向下遍歷成子一陽,例如它一次只能處理一個數組的單個級別。 –

回答

3

嘗試:

$find = array ('http://','www.'); 

foreach ($js->RESULT as $item) 
{ 
     $blekkoArray[$i]['url'] = str_replace ($find, '', ($item->{'url'}));   
     $blekkoArray[$i]['title'] = ($item->{'url_title'}); 
     $blekkoArray[$i]['snippet'] = ($item->{'snippet'}); 

     $i++; 
} 

print_r ($blekkoArray); 
+1

建議在初始分配到'$ blekkoArray [$ i] ['url']'時進行替換。 – Barmar

+1

並且還聲明瞭$ find,$ replace在foreach循環之外。 – Maximus2012

+0

@ Maximus2012所有公平的建議。 –