2016-05-22 2 views
2

Я summernote WYSIWYG плагин, теперь каждый раз, когда я добавить любые изображения, он преобразует изображение вКак обнаружить данные: изображения тег

<img data-filename="Untitled-1.png" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAoUAAAELCAIAAAAgGWu2AA" style="width: 645px;"> 

Теперь все, что я хочу, чтобы обнаружить этот первый тег и получить его ЦСИ значение & хранить его в БД, чтобы показать, как признакам изображения

для, например, если два-файла данных имя IMG теги

<img data-filename="Untitled-1.png" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAoUAAAELCAIAAAAgGWu2AA" style="width: 645px;"> 

<img data-filename="Untitled-2.png" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAoUAAAELCAIAAAAgGWu2AA" style="width: 645px;"> 

Я хочу, чтобы получить значение ГКЗ Untitled-1. PNG только, а не Untitled-2.png,

Вот что я пытался

preg_match('/(<img .*?>)/', $go, $img_tag); 
$feature = $img_tag[0]; 

ответ

1

Использование DOMDocument и DOMXPath легко предназначаться то, что вы хотите использовать в HTML структуру:

$content = <<<'EOD' 
<img data-filgename="Untitled-1.png" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAoUAAAELCAIAAAAgGWu2AA" style="width: 645px;"> 
<img data-filgename="Untitled-2.png" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAoUAAAELCAIAAAAgGWu2AA" style="width: 645px;"> 
EOD; 

$dom = new DOMDocument; 
$dom->loadHTML($content); 

$xp = new DOMXPath($dom); 

$result = $xp->evaluate('string(//img[@data-filename]/@src)'); 
#  img node anywhere --------^ ^    ^---- src attribute 
#  in the DOM tree    '---- predicate: must have a 
#              data-filename attribute 

if (!empty($result)) 
    echo $result, PHP_EOL;