> 백엔드 개발 > PHP 문제 > PHP가 HTML의 텍스트 내용을 대체할 수 있나요?

PHP가 HTML의 텍스트 내용을 대체할 수 있나요?

藏色散人
풀어 주다: 2023-03-12 18:30:01
원래의
1967명이 탐색했습니다.

php는 html의 텍스트 내용을 대체할 수 있습니다. 1. "preg_match_all($pattern,htmlspecialchars_decode($a)...);" 메소드를 통해 대체합니다.

PHP가 HTML의 텍스트 내용을 대체할 수 있나요?

이 문서의 운영 환경: Windows 7 시스템, PHP7.1, Dell G3 컴퓨터.

php가 html의 텍스트 내용을 대체할 수 있나요?

php는 html

다음 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 및 로컬 상대 경로의 URL이 포함되어 있는 것으로 알려져 있습니다

일반적인 사용법:

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

먼저 일치 루프 $match[1]

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

이건 꽤 귀찮은 것 같아요

업그레이드 사용법:

$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);
로그인 후 복사

이 방법은 거의 사용되지 않지만 일괄 처리할 때 효과가 엄청 좋습니다

이런 종류의 저는 개인적으로 패키지 기능을 좋아합니다.

추천 학습: "PHP 비디오 튜토리얼"

위 내용은 PHP가 HTML의 텍스트 내용을 대체할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
php
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿