2012-01-22 54 views
1

可能重複:
How to parse and process HTML with PHP?需要從所有PHP數組中刪除 「SRC =」 值

這裏是我想要做的事:

1)查找我的wordpress博客文章中的所有圖片

2.)在帖子頂部創建指向其圖片網址的鏈接

3)給每這些鏈接的屬性:

rel="prettyPhoto[ INSERT POST TITLE HERE ]" 

下面是我到目前爲止有:

$szPostContent = $post->post_content; 
$szSearchPattern = '@src="([^"]+)"@'; 

// Run preg_match_all to grab all the images and save the results in $aPics 
preg_match_all($szSearchPattern, $szPostContent, $aPics); 


// Check to see if we have at least 1 image src 
$iNumberOfPics = count($aPics[0]); 


if ($iNumberOfPics > 0) { 

///this is what I want to do 
/// $aPicsTRIMMED = preg_replace('/src=/','/http=/',$aPics); 

for ($i=0; $i < $iNumberOfPics ; $i++) { 
echo ' <a rel="prettyPhoto['.$portTit.']"'; 
     echo $aPics[0][$i]; 
echo '>Image</a>'; 

    }; 
}; 

眼下,由於是,這種代碼讓我以下內容:

<a rel="prettyPhoto[Correct Post Title]" src="http://mydomain.com/myimage.jpg">Image</a> 

非常接近,但我需要href而不是src。如果您在底部看到註釋,我一直試圖使用preg替換(不正確),並且不確定它是否朝着正確的方向移動。這是我第一次去PHP,我碰到了一堵牆。希望有一個更熟悉的人能夠在我能......之前弄清楚這件事(如果我將它放在那裏,我會發布成功的故事)同時,請在我開始瘋狂之前提供幫助。

謝謝

回答

4

替換:

echo $aPics[0][$i]; 

有了:

echo str_replace('src=', 'href=', $aPics[0][$i]); 
+0

你真棒! –

1

您注射了全場比賽src=...這一行:

 echo $aPics[0][$i]; 

但是你只應使用正則表達式的內部匹配組([^"]+)。在比賽結果陣列的[1],一個是可供選擇:

 echo ' href="' . $aPics[1][$i] . '"'; 

它只是需要通過新的屬性網頁摘要href="..."被包圍。