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

PHP에서 문자열이 주어진 단어로 시작하는지 확인하는 방법

PHP에서 특정 문자열이 지정한 단어나 문자로 시작하는지 확인하는 함수를 직접 만드는 방법을 알아보겠습니다. 함수는 조건이 일치하면 TRUE, 일치하지 않으면 FALSE를 반환하도록 작성합니다.

함수 문법

begnWith(str, begnStr)

각 매개변수의 의미는 다음과 같습니다.

  • str — 검사 대상이 되는 원본 문자열

  • begnStr — 문자열 시작 부분에서 찾고자 하는 텍스트

예제 코드

다음은 strlen()substr()을 활용하여 구현한 예제입니다.

<?php
    function begnWith($str, $begnString) {
        $len = strlen($begnString);
        return (substr($str, 0, $len) === $begnString);
    }
    if(begnWith("pqrstuvwxyz", "p"))
        echo "True! It begins with p!";
    else
        echo "False! It isn't beginning with p!";
?>

출력 결과

True! It begins with p!

동작 원리

먼저 strlen()으로 검사할 텍스트의 길이를 구한 후, substr()을 이용해 원본 문자열의 앞부분을 같은 길이만큼 잘라냅니다. 그리고 잘라낸 결과와 검사 텍스트가 완전히 일치하는지 삼중 등호(===)로 비교합니다. === 연산자는 값뿐 아니라 자료형까지 엄격하게 비교하기 때문에 예상치 못한 형 변환 오류 없이 안전하게 판별할 수 있습니다.

PHP 8 이상이라면 str_starts_with() 활용

PHP 8부터는 내장 함수인 str_starts_with()를 제공하므로, 별도의 함수를 만들지 않고도 더욱 간결하게 처리할 수 있습니다.

<?php
if (str_starts_with("pqrstuvwxyz", "p")) {
    echo "True! It begins with p!";
} else {
    echo "False! It isn't beginning with p!";
}
?>

직접 구현한 begnWith() 함수와 실행 결과가 동일하며, 코드 가독성과 유지보수 측면에서 내장 함수를 사용하는 것이 권장됩니다.