코드 복사 코드는 다음과 같습니다.
echo "
값 캐스팅: ";
$string="2a";
$string1=intval($string);
echo '$string1의 값:'.$string1.'$string2의 값:';/ /작은따옴표 없음 변수가 출력되며
$string2=(int)($string)
echo $string2
?>
을 찾을 수 없습니다. 수동.
매뉴얼에도 이렇게 나와 있습니다. 인용:
int intval (mixed $var [, int $base ])
특정 기수 변환을 사용하여 변수 var의 정수 값을 반환합니다(기본값은 10진수). . 이 차이만 있다면 소수 상황을 처리하기 위해 (int)를 사용하는 것이 좋은 선택입니까?
차이는 없으며 일반적으로 (int)가 사용되며 float, string, array 등도 있습니다.
intval()은 매개변수가 문자열인 경우 문자열에서 해당 문자열의 첫 번째 문자 이전에 반환합니다. 숫자 문자열로 표시되는 정수 값이 아닙니다. 문자열의 첫 번째 문자가 '-'인 경우 두 번째 문자부터 계산이 시작됩니다.
매개변수가 점으로 구분된 숫자인 경우 반올림된 값이 반환됩니다.
물론, intval()이 반환하는 값은 4byte 값으로 표현할 수 있는 범위(-2147483648~2147483647) 이내이다. 이 범위를 넘는 값은 경계값으로 대체된다.
예: intval("A")=0; intval("1123Asdfka3243")=1123;
int()
예:
$a=0.13;
$b=(int)$a;
$a=0.99
$b=(int)$a; a=1.01;
$b=(int)$a;
$a=1.99
$b=1;
PHP 문자열을 int로 변환
때로는 변수 값을 int 형식으로 유지하는 것이 중요합니다. eaxmple, 방문자가 연령 필드를 사용하여 양식을 작성하는 경우 이는 int여야 합니다. 그러나 $_POST 배열에서는 문자열로 가져옵니다.
PHP 문자열을 int로 변환하는 것은 쉽습니다. 캐스팅하기 전에 변수 유형을 사용해야 하므로 (int)를 사용해야 합니다. 이를 수행하는 방법의 예는 다음과 같습니다.
코드 복사 코드는 다음과 같습니다.
$str = "10";
$num = (int)$str;?>
코드가 실제로 작동하는지 확인하려면 =를 사용할 수 있습니다. == 연산자. 이 연산자는 값뿐만 아니라 유형도 확인합니다. 해당 코드는 다음과 같습니다.
코드 복사 코드는 다음과 같습니다.
$ str = "10";
$num = (int)$str;
if ($str === 10) echo "문자열"
if ($num === 10) echo "정수 ";
?>
질문이 하나 더 남아있습니다. 우리의 문자열이 단순히 숫자의 문자열이 아니라면 어떻게 될까요? 문자열에 다른 문자가 있다는 뜻입니다. 이 경우 변환 작업은 최선을 다해 공백만 있고 숫자 값 뒤에 유효한 문자가 없는 경우 문자열을 변환할 수 있습니다. 다음과 같이 작동합니다.
“10” - > 10
“10.5” - > 10
“10” - > "10" - > 10
"10test" - > 10
"test10" - >
위의 내용은 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.