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

PHP에서 문자열을 숫자로 변환하는 방법 완벽 정리

PHP에서는 문자열을 숫자로 손쉽게 변환할 수 있습니다. 대표적인 방법으로는 타입 캐스팅(type casting)전용 변환 함수를 사용하는 방식이 있으며, 상황에 맞게 선택하여 활용하면 됩니다.

정수(int) 타입 캐스팅 예제

문자열 앞에 (int)를 붙여주면 해당 문자열을 정수형으로 간단히 변환할 수 있습니다. 코드는 다음과 같습니다.

<?php
    $str = "150";
    $num = (int)$str;
    echo "Number (Converted from String) = $num";
?>

출력 결과

Number (Converted from String) = 150

floatval() 함수를 이용한 실수(float) 변환 예제

소수점이 포함된 문자열을 실수형 숫자로 변환할 때는 floatval() 함수를 사용합니다. 이 함수는 인자로 전달받은 값을 float 타입으로 변환하여 반환합니다.

<?php
    $str = "100.56";
    echo "String = $str";
    $num = floatval($str);
    echo "\nNumber (Converted from String) = $num";
?>

출력 결과

String = 100.56
Number (Converted from String) = 100.56

그 외 유용한 변환 방법들

  • (int) 또는 intval() : 문자열을 정수로 변환합니다. 두 방식 모두 동일한 결과를 반환합니다.
  • (float), (double) 또는 floatval() : 문자열을 실수로 변환합니다.
  • settype($var, "integer") : 변수의 자료형 자체를 직접 변경합니다.

변환 시 주의 사항

숫자가 아닌 문자가 포함된 문자열을 변환하면, PHP는 문자열의 시작 부분부터 읽을 수 있는 숫자만 추출하여 반환합니다. 예를 들어 "150abc"150으로 변환되지만, 숫자로 시작하지 않는 문자열은 0이 됩니다. 따라서 변환 전에 is_numeric() 함수로 값의 유효성을 검사하는 것이 안전합니다.