Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Apakah perbezaan antara int dan intval dalam php

Apakah perbezaan antara int dan intval dalam php

WBOY
WBOYasal
2022-07-27 16:30:573077semak imbas

Perbezaan antara int dan intval dalam php: 1. int merujuk kepada jenis integer Integer, dan intval merujuk kepada fungsi yang digunakan untuk mendapatkan nilai integer pembolehubah 2. Penukaran paksa int dan fungsi intval dipaparkan dalam pelbagai jenis melebihi Apabila nilai maksimum intval ialah rentetan, ia mengembalikan nilai integer yang diwakili oleh rentetan nombor sebelum aksara pertama dalam rentetan yang bukan nombor.

Apakah perbezaan antara int dan intval dalam php

Persekitaran pengendalian artikel ini: sistem Windows 10, PHP versi 8.1, komputer Dell G3

Apakah perbezaan antara int dan intval dalam fungsi php

intval() digunakan untuk mendapatkan nilai integer pembolehubah. Fungsi

intval() mengembalikan nilai integer var pembolehubah dengan menggunakan penukaran asas yang ditentukan (lalai ialah perpuluhan). intval() tidak boleh digunakan dengan objek, jika tidak, ralat E_NOTICE akan dihasilkan dan 1 akan dikembalikan.

int dalam php merujuk kepada jenis Integer

intval() fungsi

Sintaks:

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

nilai ialah nilai kuantiti yang hendak ditukar kepada integer

asas ialah asas yang digunakan untuk penukaran (lalai ialah perpuluhan jika dibiarkan kosong)

Nilai pulangan: pembolehubah jenis int

PS: Base tidak akan berfungsi melainkan nilai ialah rentetan.

Contoh:

<?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) cast

Demonstrasi:

<?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>";                   
?>

Ringkasan:

  • Paksaan int adalah konsisten dengan fungsi intval() apabila menghadapi boolean, int, float, tatasusunan (tidak melebihi nilai maksimum yang dipaparkan oleh setiap jenis) .

  • intval() Jika parameter ialah rentetan, mengembalikan nilai integer yang diwakili oleh rentetan nombor sebelum aksara pertama dalam rentetan yang bukan nombor. Jika aksara pertama dalam rentetan ialah '-', pengiraan bermula dari aksara kedua. Jika parameter ialah nombor bertitik, nilai bulatnya dikembalikan.

  • Nilai maksimum jenis int ialah 2147483647. Biasanya semasa penukaran jenis, jika ia melebihi nilai maksimum ini, ia akan dipaparkan sebagai nilai maksimum, (int) akan memaparkan -1609564160.

Pembelajaran yang disyorkan: "Tutorial Video PHP"

Atas ialah kandungan terperinci Apakah perbezaan antara int dan intval dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn