Computer >> 컴퓨터 >  >> 프로그래밍 >> PHP

PHP str_ireplace() 함수 완벽 정리 – 대소문자 구분 없이 문자열 치환하기

PHP의 str_ireplace() 함수는 문자열 안에서 특정 문자나 단어를 찾아 다른 값으로 교체(치환)할 때 사용하는 함수입니다. 예를 들어 문장 속의 특정 이름을 다른 이름으로 바꾸거나, 배열의 여러 요소를 한 번에 수정할 때 유용하게 활용됩니다.

참고: str_ireplace() 함수는 대소문자를 구분하지 않습니다(case-insensitive). 만약 대소문자까지 정확히 일치해야 하는 치환이 필요하다면 str_replace() 함수를 사용해야 합니다.

문법(Syntax)

str_ireplace(find, replace, str, count)

매개변수(Parameters)

  • find − 검색할 값으로, 찾고자 하는 문자열 또는 배열을 지정합니다.

  • replace − find에서 찾은 값을 대체할 새로운 값입니다.

  • str − 검색 대상이 되는 문자열 또는 배열입니다.

  • count − 선택 사항으로, 실제로 치환이 수행된 횟수가 이 변수에 저장됩니다.

반환값(Return)

str_ireplace() 함수는 치환 작업이 완료된 문자열 또는 배열을 반환합니다. 입력값이 배열이라면 배열의 모든 요소에 대해 치환이 적용됩니다.

다음은 기본적인 사용 예시입니다.

예제 1: 문자열 치환

<?php
$str = "I am Amit";
$res = str_ireplace("Amit", "David", $str);
echo $res;
?>

실행 결과는 다음과 같습니다.

출력

I am David

위 예제에서는 "Amit"라는 단어가 "David"로 교체되었습니다. 만약 입력이 "i am amit"처럼 소문자였더라도 동일하게 치환되는데, 이것이 바로 str_ireplace()가 대소문자를 구분하지 않기 때문입니다.

이번에는 배열을 대상으로 치환하고, 치환된 횟수까지 확인해 보겠습니다.

예제 2: 배열 치환 및 치환 횟수 확인

<?php
$myArr = array("one","two","three");
print_r(str_ireplace("three","four",$myArr,$c));
echo "<br>" . "Number of Replacements = $c";
?>

실행 결과는 다음과 같습니다.

출력

Array
(
    [0] => one
    [1] => two
    [2] => four
)
Number of Replacements = 1

배열의 세 번째 요소 "three"가 "four"로 변경되었으며, 네 번째 매개변수 $c를 통해 총 1회의 치환이 발생했음을 확인할 수 있습니다. 이처럼 count 매개변수를 활용하면 몇 번의 치환이 일어났는지 손쉽게 파악할 수 있어 로깅이나 디버깅에도 유용합니다.