PHP에서 증가 연산자(++)를 문자열 값에 적용하면 의외로 재미있는 결과가 나타납니다. 문자열의 마지막 문자가 알파벳이라면 해당 문자가 다음 알파벳으로 하나씩 증가하고, 숫자 형태의 문자열이라면 일반적인 산술 덧셈이 수행됩니다.
예를 들어 마지막 문자가 'n'이라면 'o'로 바뀌고, 'z'라면 'aa'로 넘어갑니다. 반면 문자열 전체가 숫자로만 구성되어 있다면 PHP는 이를 수치형 값으로 인식하여 평소처럼 1을 더합니다.
다음은 이를 확인할 수 있는 PHP 코드입니다.
예제 코드
<!DOCTYPE html>
<html>
<body>
<?php
$values = 'John';
echo "수정된 문자열 값 = ", ++$values, "<br>";
$values1 = "10.5";
echo "증가된 문자열 값 = ", ++$values1;
?>
</body>
</html>출력 결과
수정된 문자열 값 = Joho 증가된 문자열 값 = 11.5
결과 분석
첫 번째 변수 $values에는 문자열 'John'이 저장되어 있습니다. 여기에 ++ 연산자를 적용하면 마지막 문자인 'n'이 다음 알파벳인 'o'로 증가하여 최종적으로 'Joho'가 출력됩니다.
두 번째 변수 $values1에는 숫자 형태의 문자열 "10.5"가 저장되어 있습니다. PHP는 이를 실수(float)로 인식하기 때문에 ++ 연산자가 일반적인 산술 연산처럼 동작하여 11.5가 됩니다.
정리
정리하면, PHP의 ++ 연산자는 피연산자가 알파벳·숫자가 섞인 문자열일 때는 Perl 방식처럼 마지막 문자를 증가시키고, 순수한 숫자 문자열일 때는 수치 연산으로 처리한다는 점을 기억하시기 바랍니다.