2011-12-16 2 views
0

У меня есть тестовый код с помощью simple_dom_html:Ошибка при замене alt в теге изображения?

<?php 
include 'simple_html_dom.php'; 
$content = '<img src="name1.jpg" alt="name"><img src="name2.jpg" alt="name2">'; 
$html = new simple_html_dom(); 
$html->load($content); 
$array_alt = array(); 
foreach($html->find('img') as $element) { 
    $element->src = "new src"; 
    $array_alt[] = $element->alt; 
} 
for($i=0; $i<count($array_alt); $i++) { 
    $array_alt[$i] = "test" . $i; 
} 
echo $html; 

ВЫВОД:

$html= '<img src="new src" **alt="name"**><img src="newsrc" **alt="name2"**>'; 

Ошибка при эхо $ содержание, альт не изменяются от имени "имя1", "имя2" на "test1", " test2 ", как это исправить?

+0

Какую ошибку вы получаете? – xdazz

+0

@xdazz, нет ошибки. Я думаю, что результат отличается от того, что подозревается. –

ответ

2

Изменить ваш две петли на:

//.... 
$i=0; 
foreach($html->find('img') as $element) { 
    $element->src = "new src"; 
    $element->alt = "test" . $i; 
    $i++; 
} 
//.... 
0
<?php 
include 'simple_html_dom.php'; 

$content = '<img src="name1.jpg" alt="name"><img src="name2.jpg" alt="name2">'; 
$html = new simple_html_dom(); 
$html->load($content); 

$i=0; 
foreach($html->find('img') as $element) { 
    $element->src = "new src"; 
    $element->alt = "test".$i; 
    $i += 1; 
} 

echo $html; 

?> 
Смежные вопросы