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

PHP에서 문자열에 특정 부분 문자열이 포함되어 있는지 확인하는 방법

문자열 안에 특정 부분 문자열(substring)이 존재하는지 확인하려면 PHP의 strlen 함수와 strpos 함수를 함께 사용할 수 있습니다. strlen 함수는 문자열의 전체 길이를 반환하고, strpos 함수는 부분 문자열이 처음으로 나타나는 위치(인덱스)를 찾아줍니다.

예제 코드

<?php
    $str_1 = "thisisasample";
    $str_2 = "asample";
    if (strpos($str_1, $str_2) >= 0 && strpos($str_1, $str_2) < strlen($str_1))
        echo("The substring is present within the string.");
    else
        echo("The substring is not present within the string.");
?>

출력 결과

The substring is present within the string.

위 예제에서는 두 개의 문자열을 정의한 뒤, strpos 함수를 사용하여 두 번째 문자열이 첫 번째 문자열 내에서 차지하는 위치를 확인합니다. 이 위치 값이 0보다 크거나 같고, 첫 번째 문자열의 전체 길이(strlen 반환 값)보다 작다면 해당 부분 문자열이 문자열 안에 존재한다고 판단할 수 있습니다. 조건 판별 결과에 따라 적절한 메시지가 화면에 출력됩니다.

참고로 PHP 8부터는 str_contains() 함수를 사용하면 훨씬 간결하게 동일한 검사를 수행할 수 있습니다. 예를 들어 if (str_contains($str_1, $str_2)) 형태로 작성하면 별도의 길이 비교 없이 부분 문자열 포함 여부를 바로 확인할 수 있습니다.