我想問一下我在這段代碼中犯的錯誤。 我目前正在嘗試查找圖像標記或對象標記的第一個匹配項,然後返回一段html,如果它匹配一個。 目前,我可以獲取圖片標籤,但不幸的是,我似乎無法在對象標籤上獲得任何結果。PHP:查找字符串中的第一個img或對象標記
我認爲,我在我的正則表達式模式或某事中犯了一些錯誤。希望的要求已經足夠清楚,你可以理解謝謝。
我在這裏的代碼:
function get_first_image(){
global $post, $posts;
$first_img = '';
ob_start();
ob_end_clean();
$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches) || preg_match_all('/<object[0-9 a-z_?*=\":\-\/\.#\,<>\\n\\r\\t]+<\/object>/smi', $post->post_content, $matches);
$first_img = $matches [1] [0];
if(empty($first_img)){ //Defines a default image
$mediaSearch = preg_match_all('/<object[0-9 a-z_?*=\":\-\/\.#\,<>\\n\\r\\t]+<\/object>/smi', $post->post_content, $matches2);
$first_media = $matches2 [1] [0];
$first_img = "/images/default.jpg";
}
if(!empty($first_img)){
$result = "<div class=\"alignleft\"><img src=\"$first_img\" style=\"max-width: 200px;\" /></div>";
}
if(!empty($first_media)){
$result = "<p>" . $first_media . "</p>";
}
return $result;
}
好吧,我目前正在嘗試使該功能還搜索對象標籤... – user143805 2009-07-24 05:28:54