Maison >développement back-end >Problème PHP >Comment implémenter le remplacement du contenu HTML en PHP
Comment remplacer le contenu php html : créez d'abord un exemple de fichier HTML ; puis modifiez le contenu en html via la méthode "preg_match_all($pattern,htmlspecialchars_decode($a),$match);"
Recommandé : "Tutoriel vidéo PHP"
L'environnement d'exploitation de ce tutoriel : système Windows7, PHP5. Version 6, cette méthode convient à toutes les marques d'ordinateurs.
php modifie le contenu en html
On sait que le morceau suivant de 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>"
contient http, https et l'url du chemin relatif local
Utilisation courante :
$pattern="/<img.*?src=[\'|\"](.*?)[\'|\"].*?[\/]?>/"; preg_match_all($pattern,htmlspecialchars_decode($a),$match); if(!empty($match[1])){ print_r($match[1]); }else{ echo "没得"; }
Faites d'abord correspondre tout ce qui se trouve dans la boucle $match[1]
Après la boucle foreach($ match[1 ] as $val){preg_replace('#src="'.$val.'"/#is', 'src="aaaaa/',$a);}
Je pense que ça est assez gênant
Utilisation de la mise à niveau :
$host="http://mp.csdn.net" $newContent = preg_replace_callback("/<img.*?src=[\'|\"](.*?)[\'|\"].*?[\/]?>/", function($m) use($host){ if(strpos($m[1],'http://') || strpos($m[1],'https://')){ return $m[0]; }else{ $img=preg_replace('#src="/#is', 'src="'.$host.'/',$m[0]); return $img; } }, $a);
Bien que cette méthode soit rarement utilisée, l'effet est super bon lors du traitement par lots >Personnellement ! comme ce genre de fonction de fermeture. Le code est très lisible
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!