您好,登錄后才能下訂單哦!
php中怎么轉換變量的類型,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
NULL類型
php變量的類型是如何轉換的?常量如何定義?系統常量
表示一個變量沒有值。NULL類型唯一可能的值就是NULL
被認為是NULL的情況:
1 <?php 2 var_dump( $a ); // 1.變量沒有聲明 返回 NULL 3 4 $b; 5 var_dump( $b ); // 2.變量沒有被賦值 返回 NULL 6 7 $c = 10; 8 unset( $c ); 9 var_dump( $c ); // 3.變量被銷毀 返回 NULL 10 11 $d = null; 12 var_dump( $d ); // 4.變量被賦值為null 返回 NULL 13 ?>
is_null(),用來判斷變量是否為空,如果是返回true,否則返回false。//你放進來的變量是null類型。
變量是否有定義 isset( 變量名 )
1) 變量未聲明, 未賦值
2) 變量的值為 null
上面兩種情況返回 false , 其他情況返回 true
變量是否為空 empty( 變量名 )
為空返回 true 不為空返回 false
為空的情況有 0 '' '0' false 空數組 null
變量的類型轉換
php屬性于弱類型語言, 變量的類型取決于它存放的數據, 數據類型改變了,變量的類型也就變了.
自動類型轉換
1 <?php 2 var_dump( $a ); // 1.變量沒有聲明 返回 NULL 3 4 $b; 5 var_dump( $b ); // 2.變量沒有被賦值 返回 NULL 6 7 $c = 10; 8 unset( $c ); 9 var_dump( $c ); // 3.變量被銷毀 返回 NULL 10 11 $d = null; 12 var_dump( $d ); // 4.變量被賦值為null 返回 NULL 13 ?>
大多數情況下,會被轉換為true, 轉換為 false 的情況有:
1) 布爾值 false
2) 整數 0
3) 浮點數 0.0
4) 字串串 "" 和 "0"
5) 變量沒有賦值或未定義
6) 空數組
7) NULL
其它情況為 true (真)
四則運算會把兩邊的內容自動轉化為數值
1 <?php 2 echo '123' + '2ab'; // 123 + 2 = 125 3 echo '' + 5; // 0 + 5 = 5 4 echo true + false; // 1 + 0 = 1 5 6 echo '12e2ab' + 77; // 1200 + 77 = 1277 (注意) 7 ?>
變量的強制類型轉換
gettype( 變量名 ) 獲取變量的類型
settype( 變量名, 類型字符串 ) 設置變量的新類型
$a = (int)$b;
把$b的數據讀取出來, 轉化為 int 類型, 賦值給 $a, 注意, $b 沒有改變.
可變變量
變量名前再加$. 變量名還是一個變量.
1 <?php 2 $a = 'b'; 3 $b = 'xxoo'; 4 echo $$a; // 相當于 echo $($a) => echo $b 所以輸出 xxoo 這就是可變變量 5 ?>
引用變量
1 <?php 2 $a = 100; 3 $b = &$a; // $b 和 $a 將代表同一個容器, 所以改變$b的值, $a也就改變了 4 // & 稱為取地址符 5 6 unset($a); 7 echo $b; // 銷毀互為引用關系變量中的一個變量, 另一個仍然有效 8 // 銷毀 $a 只是不讓$a代表容器了, 容器本身還在, 還由$b代表 9 10 ?>
常量
定義賦值后, 存放的數據不能被修改、覆蓋,也不能被銷毀。
define( '常量名', 值);
常量可以參加運算.
常量名區分大小寫, 習慣上用大寫
1 <?php 2 echo xxoo; // 沒有單引號,也沒有雙引號, 系統會嘗試把它理解為一個常量 3 4 echo $arr[abc] // 方括號中沒有引號, 系統也會嘗試理解為常量 5 ?> defined('常量名') 判斷一個常量是否存在.
關于php中怎么轉換變量的類型問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。