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

PHP에서 마지막 하이픈 뒤의 숫자 추출하는 방법

하이픈(-)과 숫자가 함께 포함된 문자열에서 마지막 하이픈 뒤에 있는 값만 추출해야 하는 경우가 종종 있습니다. 예를 들어 다음과 같은 문자열이 있다고 가정해 보겠습니다.

"John-45-98-78-7898906756"

이 문자열에서 최종적으로 얻고자 하는 값은 7898906756입니다. PHP에서는 explode() 함수를 활용하면 간단하게 해결할 수 있습니다.

1. explode() 함수로 문자열 분리하기

explode() 함수는 지정한 구분자를 기준으로 문자열을 배열로 나누어 줍니다. 하이픈(-)을 구분자로 사용하면 다음과 같은 배열이 생성됩니다.

Array
(
    [0] => John
    [1] => 45
    [2] => 98
    [3] => 78
    [4] => 7898906756
)

배열의 마지막 요소(인덱스 4)에 접근하면 원하는 숫자를 얻을 수 있습니다.

2. 전체 예제 코드

<!DOCTYPE html>
<html>
<body>
<?php
    $values = "John-45-98-78-7898906756";
    $values = explode("-", $values);
    $values = $values[4];
    echo $values;
?>
</body>
</html>

실행 결과

7898906756

3. 더 안전한 방법: end() 함수 활용

위 예제처럼 하이픈 개수가 고정되어 있다면 인덱스 번호를 직접 지정해도 문제가 없습니다. 하지만 하이픈 개수가 달라질 수 있는 문자열이라면 end() 함수를 사용하는 것이 훨씬 안전합니다.

<?php
    $values = "John-45-98-78-7898906756";
    $parts = explode("-", $values);
    $lastValue = end($parts);
    echo $lastValue;
?>

end() 함수는 배열의 내부 포인터를 마지막 요소로 이동시킨 후 그 값을 반환하므로, 하이픈 개수와 관계없이 항상 마지막 하이픈 뒤의 값을 정확하게 추출할 수 있습니다.

마무리

정리하면, PHP에서 마지막 하이픈 뒤의 숫자를 추출하는 핵심은 explode()로 문자열을 분리한 뒤 마지막 배열 요소를 가져오는 것입니다. 하이픈 개수가 고정적이라면 인덱스 접근 방식을, 유동적이라면 end() 함수를 사용하는 것이 바람직합니다.