次のように、db の値からフェッチします。
<p><img alt="" src="images/1.jpg" style="width: 2450px; height: 1054px;" /></p>
取得したいだけですsrc="images/1.jpg"
が、方法がわかりません。ガイドしてください
ソースが必要な場合は、DOMパーサーを使用してください。
// Construct a new DOMDocument with your fragment
$domDoc = new DOMDocument;
$domDoc->loadHTML( '<p><img src="images/1.jpg" style="width: 2450px;" /></p>' );
// Locate the first image the document
$img = $domDoc->getElementsByTagName( "img" )->item( 0 );
// Echo its src value
echo $img->attributes->getNamedItem( "src" )->nodeValue;
結果:http ://codepad.org/oMXGK9Iu
理想的には、アイテム#0にアクセスする前に、画像要素が存在することを確認します。同様に、属性を飛び出して取得する前に、属性が存在することを確認します。
さらに読む:http ://www.php.net/manual/en/class.domdocument.php
テキストの特定の部分を取得したいだけの場合は、単純な正規表現を使用できます。
// Prep our html
$html = '<p><img src="images/1.jpg" style="width: 2450px;" /></p>';
// Look for the source string
preg_match( '/src=\".*?\"/', $html, $matches );
// If we found it, spit it out.
echo $matches ? $matches[0] : "No source";
alt=""
デフォルトで空でスタイルがデフォルトの場合はwidth: 2450px; height: 1054px;
、次を使用できます。
<?php
$str = '<p><img alt="" src="images/1.jpg" style="width: 2450px; height: 1054px;" /></p>';
$str = str_replace('<p><img alt="" src="','', $str);
$str = str_replace('" style="width: 2450px; height: 1054px;" /></p>','',$str);
echo $str; //Outputs: images/1.jpg
?>