イメージタグ<img src="path_to_file.png">
はあるのですが、携帯サイトではイメージタグをリンクに変換したいです。だから私は img を href に変換したい:
<a href="path_to_file.png" target="_blank">Click here to open in new tab</a>
私はphp domを使い始めています。リストされているすべての属性を取得できました。
$newdocument = new DOMDocument();
$newdocument->loadHTML();
$getimagetag = $doc->getElementsByTagName('img');
foreach($getimagetag as $tag) {
echo $src=$tag->getAttribute('src');
}
しかし、どのように src 属性を取得し、高さや長さなどの他のパラメーターが含まれているため img タグを完全に削除してから、リンクの新しいタグを作成するにはどうすればよいでしょうか?
こんにちは皆さん、次のコードを使用して php dom から実行できます
$input="<img src='path_to_file.png' height='50'>";
$doc = new DOMDocument();
$doc->loadHTML($input);
$imageTags = $doc->getElementsByTagName('img');
foreach($imageTags as $tag) {
$src=$tag->getAttribute('src');
$a=$doc->createElement('a','click here to open in new tab');
$a->setAttribute('href',$src);
$a->setAttribute('style','color:red;');
$tag->parentNode->replaceChild($a,$tag);
}
$input=$doc->saveHTML();
echo $input;
create 要素を使用して、<a></a>
Click...new tab などの間にテキストを配置することもできます。
replacechild は、$tag を削除img
してタグに置き換えるために使用されa
ます。属性を設定することで、スタイル、ターゲットなどの他のパラメーターを追加できます。
最後にphp domを使用しました。これは、mysqlから取得したデータのみを変換し、Webサイトのロゴなどの他の要素は変換したくないためです。もちろんjavascriptでも可能です。
ありがとう
@dave chen は、javascript の方法と、モバイル リンクの検出を指しています。
答えを教えてくれた@nate。