2013-06-30 3 views
0

Первое сообщение здесь, и я действительно надеюсь, что вы сможете помочь.Получить часть src строки

Я использую базу данных, где хранится большой кусок html, теперь мне просто нужна часть src тега изображения.

Я уже нашел нить, но я просто не делаю трюк.

Мой код:

Оригинальная строка:

<p><img alt=\"\" src=\"http://domain.nl/cms/ckeditor/filemanager/userfiles/background.png\" style=\"width: 80px; height: 160px;\" /></p> 

Как я начать:

$image = strip_tags($row['information'], '<img>'); 
echo stripslashes($image); 

Это возвращает:

<img alt="" src="http://domain.nl/cms/ckeditor/filemanager/userfiles/background.png" style="width: 80px; height: 160px;" /> 

Следующий шаг: извлечь Src часть:

preg_match('/< *img[^>]*src *= *["\']?([^"\']*)/i', $image, $matches); 

echo $matches ; 

Это последнее эхо возвращается:

Array 

Что происходит не так?

Заранее благодарен за ваш андерсер.

+3

Вы можете использовать 'print_r()', чтобы увидеть содержимое массива для отладки. –

+2

use DOMDocument и DOMXpath – DevZer0

+0

Сделайте это очень грязно - 'explode'on' src = "', затем взорвите второе значение результата на '' '. – moonwave99

ответ

1

Использование regexp для решения этой проблемы - a bad idea и, скорее всего, приведет к недостижимому и ненадежному коду. Лучше нас an HTML parser.

Использование simplehtmldom вы можете легко извлечь src из img тега:

foreach($html->find('img') as $element) 
     echo $element->src . '<br/>'; 
Смежные вопросы