2013-03-04 64 views
0

現在,我有這樣的:大教堂更換整個節點

$text = $row->text; 
$dom = new DOMDocument(); 
$dom->loadHTML($text); 
$tags = $dom->getElementsByTagName('img'); 

foreach ($tags as $tag) { 
    $eg = $tag->getAttribute('data-easygal'); 
    $src = $tag->getAttribute('src'); 
    $values = explode("_",$eg); 
    $display = $this->prepareAlbum($values[0],$values[1],$src); 
} 
$row->text = $text; 

有沒有辦法更換整個節點$標記,與什麼是$顯示字符串?例如,我似乎無法找到str_replace節點。 曾經有preg_replace但是在客戶端服務器上無法正常工作,即使它在家裏也可以正常工作(並且有一些即時來自PHP社區的preg和html的憤怒)

嘗試搜索董事會,但沒有找到我的運氣需要:S

回答

0

喜歡的東西:

foreach($tags as &$tag) { 
    ... 
    $tag = new DomNode(); 
} 
0

嘗試

$tag-> parentNode ->replaceChild($newNode, $tag); 

應更換$tag節點與$newNode - 以通常方式創建的DOM節點。

+0

事情是,我需要把一個字符串,在它的位置,而不是一個新的dom。 – user2078025 2013-03-04 10:54:41

+0

使用'createTextNode(文本)' – 2013-03-04 10:59:40