여러 항목의 Str_replace

전에 했던 건 기억하는데 코드를 찾을 수가 없어요.str_replace를 사용하여 다음과 같은 문자를 바꿉니다.str_replace(':', ' ', $string);다음 캐릭터를 모두 교체하고 싶습니다./:*?"<> str_replace 를 실행하지 않습니다.



질문에 대한 답변



다음과 같이 합니다.

str_replace(array(':', '\', '/', '*'), ' ', $string); 

또는, 현대의 PHP(5.4 이후 버전)에서는, 조금 더 말이 적은 것 같습니다.

str_replace([':', '\', '/', '*'], ' ', $string); 



str_replace() 어레이를 도입할 수 있기 때문에, 다음과 같은 일이 가능합니다.

$new_str = str_replace(str_split('\/:*?"<> '), ' ', $string); 

또는 다음을 사용할 수 있습니다.

$new_str = preg_replace('~[\\/:*?"<> ]~', ' ', $string); 



를 들어 search1을 replace1로, search2를 replace2로 치환하는 경우 다음 코드가 작동합니다.

print str_replace(
array("search1","search2"),
array("replace1", "replace2"),
"search1 search2" ); 

// 출력: replace1 replace2




str_replace(
array("search","items"),
array("replace", "items"),
$string ); 



1개의 문자만을 치환하는 경우는,