Heim  >  Artikel  >  Backend-Entwicklung  >  So implementieren Sie die HTML-Inhaltsersetzung in PHP

So implementieren Sie die HTML-Inhaltsersetzung in PHP

藏色散人
藏色散人Original
2020-11-24 09:29:503945Durchsuche

So ersetzen Sie PHP-HTML-Inhalte: Erstellen Sie zunächst eine HTML-Beispieldatei; ändern Sie dann den Inhalt in HTML mit der Methode „preg_match_all($pattern,htmlspecialchars_decode($a),$match);“

So implementieren Sie die HTML-Inhaltsersetzung in PHP

Empfohlen: „PHP-Video-Tutorial

Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 5.6. Diese Methode ist für alle Computermarken geeignet.

php ändert den Inhalt in HTML

Es ist bekannt, dass der folgende Teil von HTML

$a="<p><img src=\"/upload/store/1/ue/image/1568282125833264.png\" title=\"1568282125833264.png\" alt=\"1.png\"/><img src=\"http://dimg04.c-ctrip.com/images/300q12000000rq2t956CB.jpg\" alt=\"undefined\"/><img src=\"https://dimg04.c-ctrip.com/images/300m12000000sdsca92E2.jpg\"/><img src=\"https://dimg04.c-ctrip.com/images/300w12000000rutmrD6CB.jpg\" alt=\"undefined\"/><img src=\"https://dimg04.c-ctrip.com/images/300u12000000rorex415F.jpg\" alt=\"undefined\"/><img src=\"http://dimg04.c-ctrip.com/images/300k12000000rsyxgBA05.jpg\" alt=\"undefined\"/></p>"

http, https und eine lokale relative Pfad-URL enthält.

Allgemeine Verwendung:

$pattern="/<img.*?src=[\&#39;|\"](.*?)[\&#39;|\"].*?[\/]?>/";
preg_match_all($pattern,htmlspecialchars_decode($a),$match);
if(!empty($match[1])){
    print_r($match[1]);
}else{
echo "没得";
}

Erste Übereinstimmung mit allen in der Schleife $match [1]

After-Schleife foreach($match[1] as $val){preg_replace('#src="'.$val.'"/#is', 'src="aaaaa/',$ a) ;}

Ich finde das ziemlich mühsam

Upgrade-Nutzung:

$host="http://mp.csdn.net"
$newContent =  preg_replace_callback("/<img.*?src=[\&#39;|\"](.*?)[\&#39;|\"].*?[\/]?>/", function($m) use($host){

   if(strpos($m[1],&#39;http://&#39;) || strpos($m[1],&#39;https://&#39;)){
       return $m[0];
   }else{
       $img=preg_replace(&#39;#src="/#is&#39;, &#39;src="&#39;.$host.&#39;/&#39;,$m[0]);
       return $img;
   }
}, $a);

Obwohl diese Methode selten verwendet wird, funktioniert sie super gut bei der Stapelverarbeitung

Ich persönlich mag diese Verschlussfunktion! . Der Code ist sehr gut lesbar

Das obige ist der detaillierte Inhalt vonSo implementieren Sie die HTML-Inhaltsersetzung in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn