>백엔드 개발 >PHP 튜토리얼 >PHP에서 처음 나타나는 부분 문자열만 어떻게 바꿀 수 있나요?

PHP에서 처음 나타나는 부분 문자열만 어떻게 바꿀 수 있나요?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-12-13 12:42:14704검색

How Can I Replace Only the First Occurrence of a Substring in PHP?

str_replace로 첫 번째 항목만 바꾸기

단일 항목만 수정하는 내장된 str_replace() 변형은 없습니다. 그러나 복잡한 접근 방식을 사용하지 않고도 명쾌한 해결책이 있습니다.

첫 번째 일치 항목으로 교체를 제한하려면 다음 절차를 따르세요.

  1. strpos()를 사용하여 위치를 찾습니다. $subject 문자열 내에서 초기 $search 발생.
  2. 위치가 false가 아닌 경우 발생이 발생했음을 의미합니다. 찾았습니다.
  3. substr_replace()를 사용하여 새 문자열 $newstring을 만듭니다. 이 함수는 $needle의 길이 동안 지정된 위치에서 교체를 수행합니다.
$pos = strpos($haystack, $needle);
if ($pos !== false) {
    $newstring = substr_replace($haystack, $replace, $pos, strlen($needle));
}

이 방법은 매우 효율적이며 정규 표현식과 관련된 잠재적인 성능 저하를 피할 수 있습니다.

보너스:

마지막 항목을 바꾸려면 간단히 strpos()를 다음으로 바꾸세요. 위 코드에서는 strrpos()를 사용합니다.

위 내용은 PHP에서 처음 나타나는 부분 문자열만 어떻게 바꿀 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.