> 백엔드 개발 > PHP 튜토리얼 > str_replace가 잘못된 데이터를 반환하는 이유

str_replace가 잘못된 데이터를 반환하는 이유

WBOY
풀어 주다: 2016-08-04 09:19:15
원래의
1542명이 탐색했습니다.

예: 영어 쉼표, 공백 문자 또는 중국어 쉼표 바꾸기
$str = '올바른, 문의처 Goodsjob, Goodsjob';
$reg = array(',',' ',',' ) ;
$strs = '%'.str_replace($reg,'% 또는 %',$str과 같은 사용자 이름).'%';
반환된 데이터는 다음과 같습니다: %corright%,%와 같은 사용자 이름 , 또는 %or% 같은 사용자 이름, %username% 같은 사용자 이름, %like% 같은 사용자 이름, % Contact Us% 같은 사용자 이름, %goodsjob% 같은 사용자 이름, %goodsjob% 같은 사용자 이름, 왜죠?

정확한 결과는 다음과 같습니다: usernme는 %corright%, 사용자 이름은 %contact us%, 사용자 이름은 %goodsjob%

답글 내용:

예: 영어 쉼표, 공백 문자 또는 중국어 쉼표 바꾸기
$str = '올바른, 문의처 Goodsjob, Goodsjob';
$reg = array(',',' ',',' ) ;
$strs = '%'.str_replace($reg,'% 또는 %',$str과 같은 사용자 이름).'%';
반환된 데이터는 다음과 같습니다: %corright%,%와 같은 사용자 이름 , 또는 %or% 같은 사용자 이름, %username% 같은 사용자 이름, %like% 같은 사용자 이름, % Contact Us% 같은 사용자 이름, %goodsjob% 같은 사용자 이름, %goodsjob% 같은 사용자 이름, 왜죠?

정확한 결과는 다음과 같습니다: usernme는 %corright%, 사용자 이름은 %contact us%, 사용자 이름은 %goodsjob%

먼저 공백을 다른 문자로 바꾸세요. $str =》% 또는 %와 같은 사용자 이름도 바꾸기 규칙을 충족하므로 결과에 영향을 미칩니다.

<code>        $str = '正确,联系我们 goodsjob,goodsjob';
        $str = str_replace(' ', ' ', $str);
        $reg = array(',',','," ");
        $strs = 'username like %'.str_replace($reg,'%, or username like %',$str).'%';
        
        

</code>
로그인 후 복사

注意:str_replace() 함수는 왼쪽에서 오른쪽으로 바꾸기 때문에 여러번 바꾸기를 하면 이전에 삽입한 값을 바꿀 수도 있습니다.

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