>  기사  >  백엔드 개발  >  PHP에서 int와 intval의 차이점은 무엇입니까

PHP에서 int와 intval의 차이점은 무엇입니까

WBOY
WBOY원래의
2022-07-27 16:30:573069검색

PHP에서 int와 intval의 차이점: 1. int는 정수형을 나타내며 intval은 변수의 정수 값을 얻는 데 사용되는 함수를 나타냅니다. 2. int와 intval 함수의 강제 변환은 다음을 초과합니다. 다양한 유형으로 표시되는 최대값. , intval 매개변수가 문자열인 경우 문자열에서 숫자가 아닌 첫 번째 문자 앞에 있는 숫자 문자열이 나타내는 정수 값을 반환합니다. int 유형에는 지정된 최대값이 있습니다.

PHP에서 int와 intval의 차이점은 무엇입니까

이 기사의 운영 환경: Windows 10 시스템, PHP 버전 8.1, Dell G3 컴퓨터

PHP에서 int와 intval의 차이점은 무엇입니까?

intval() 함수는 정수를 얻는 데 사용됩니다. 변수의 값.

intval() 함수는 지정된 진수 변환(기본값은 10진수)을 사용하여 변수 var의 정수 값을 반환합니다. intval()은 객체와 함께 사용할 수 없습니다. 그렇지 않으면 E_NOTICE 오류가 생성되고 1이 반환됩니다.

int는 정수 정수 유형을 나타냅니다.

intval() 함수

구문:

intval ( mixed $value , int $base = 10 ) : int

value는 정수로 변환할 수량 값입니다.

base는 변환에 사용되는 기본입니다(기본값은 다음과 같습니다). 채워지지 않음)은 10진수임)

반환값: int형 변수

PS: 값이 문자열이 아니면 base가 작동하지 않습니다.

예:

<?php
echo intval(42)."<br>";                      // 42
echo intval(4.2)."<br>";                     // 4
echo intval(&#39;42&#39;)."<br>";                    // 42
echo intval(&#39;+42&#39;)."<br>";                   // 42
echo intval(&#39;-42&#39;)."<br>";                   // -42
echo intval(042)."<br>";                     // 34
echo intval(&#39;042&#39;)."<br>";                   // 42
echo intval(1e10)."<br>";                    // 1410065408
echo intval(&#39;1e10&#39;)."<br>";                  // 1
echo intval(0x1A)."<br>";                    // 26
echo intval(42000000)."<br>";                // 42000000
echo intval(420000000000000000000)."<br>";   // 0
echo intval(&#39;420000000000000000000&#39;)."<br>"; // 2147483647
echo intval(42, 8)."<br>";                   // 42
echo intval(&#39;42&#39;, 8)."<br>";                 // 34
echo intval(array())."<br>";                 // 0
echo intval(array(&#39;foo&#39;, &#39;bar&#39;))."<br>";     // 1
echo intval(false)."<br>";                   // 0
echo intval(true)."<br>";                    // 1
?>

(int) 강제 변환

데모:

<?php
echo (int)42;     // 42
echo "<br>";
echo (int)4.2;    // 4
echo "<br>";                   
echo (int)&#39;42&#39;;   // 42
echo "<br>";                    
echo (int)&#39;+42&#39;;  // 42
echo "<br>";                  
echo (int)&#39;-42&#39;;  // -42
echo "<br>";                 
echo (int)042;    //  34
echo "<br>";                    
echo (int)&#39;042&#39;;  // 42
echo "<br>";                  
echo (int)1e10;   // 1410065408
echo "<br>";                    
echo (int)&#39;1e10&#39;; //2147483647
echo "<br>";                
echo (int)0x1A;   // 26
echo "<br>";                    
echo (int)42000000;// 42000000
echo "<br>";                
echo (int)420000000000000000000;  //-1609564160
echo "<br>"; 
echo (int)&#39;420000000000000000000&#39;; //2147483647
echo "<br>";
/*echo intval(42, 8)."<br>";                   
echo intval(&#39;42&#39;, 8)."<br>";              */
/*int的强制转换不是函数,所以无法实现*/  
                
echo (int)array();// 0
echo "<br>";                 
echo (int)array(&#39;foo&#39;, &#39;bar&#39;);//1
echo "<br>";     
echo (int)false;   //0
echo "<br>";              
echo (int)true;    //1
echo "<br>";                   
?>

요약:

  • int 강제 변환 및 intval() 함수는 부울, int, float, 배열에 직면할 때 일관성이 있습니다(do 각 유형에 표시된 최대값을 초과할 수 없습니다).

  • intval() 매개변수가 문자열인 경우 문자열에서 숫자가 아닌 첫 번째 문자 앞에 있는 숫자 문자열이 나타내는 정수 값을 반환합니다. 문자열의 첫 번째 문자가 '-'인 경우 두 번째 문자부터 계산이 시작됩니다. 매개변수가 점으로 구분된 숫자인 경우 반올림된 값이 반환됩니다.

  • int 유형의 최대값은 2147483647입니다. 일반적으로 유형 변환 시 이 최대값을 초과하면 최대값으로 표시되고, (int)는 -1609564160으로 표시됩니다.

추천 학습: "PHP 비디오 튜토리얼"

위 내용은 PHP에서 int와 intval의 차이점은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.