• <abbr id="qqgmy"></abbr>
      <menu id="qqgmy"><abbr id="qqgmy"></abbr></menu>
    • <rt id="qqgmy"><code id="qqgmy"></code></rt>
      • 類型轉(zhuǎn)換

        • 2020-07-08 11:11:39
        • 閱讀次數(shù):
        • 作者:盈嵐科技小編
        • 來源:http://www.margaycoffee.com

        網(wǎng)站建設(shè)中PHP是一種弱類型語言,但是在開發(fā)中還是需要用到類型轉(zhuǎn)換。PHP中的類型轉(zhuǎn)換與C語言一樣,非常簡單,只需要在變量前面加上用括號括起來的類型名稱即可。

        除了使用強制轉(zhuǎn)換外,還可以使用settype()函數(shù)轉(zhuǎn)換數(shù)據(jù)類型。該函數(shù)包含參數(shù)值,第一個值為變量名,第二個參數(shù)值為要轉(zhuǎn)換的類型字符串,包括boolean、float、integer、string、null、array、object。settype()函數(shù)返回值為布爾值,如果數(shù)據(jù)類型轉(zhuǎn)換成功,則返回true,否則返回false。例如,輸入下面代碼<?php$num = '3.1415926abc';            //聲明字符串變量echo (integer)$num;               //把變量強制轉(zhuǎn)換為整型echo '<p>';echo $num;                        //輸出原始變量值echo '<p>';echo settype($num, 'float');      //輸出把變量轉(zhuǎn)換為浮點數(shù)的結(jié)果echo '<p>';echo $num;                        //被轉(zhuǎn)換為浮點數(shù)后的變量值?>

        1. 轉(zhuǎn)換為布爾值

          要明確地將一個值轉(zhuǎn)換成boolean,應(yīng)該使用(bool)或者(boolean)來強制轉(zhuǎn)換。但是很多情況下不需要用強制轉(zhuǎn)換,因為當(dāng)運算符、函數(shù)或者流程控制結(jié)構(gòu)需要一個boolean參數(shù)時,該值會被自動轉(zhuǎn)換。在PHP中,并不是false才是假的,在某些特殊情況下,下面這些boolean值也被認(rèn)為是假的。   

          ?0:整型值零。

          ?0.0:浮點型值零。   

          ?"0":字符串值零。   

          ?"":空白字符串。   

          ?空數(shù)組:不包括任何元素的數(shù)組。   

          ?空對象:不包括任何成員變量的對象(僅PHP 4.0適用)。   

          ?特殊類型NULL(包括尚未設(shè)定的變量)。   

          ?從沒有任何標(biāo)記的XML文檔生成的Sim-pleXML對象。

          其他所有其他值都被認(rèn)為是true(包括任何資源)。注意,-1和其他非零值(不論正負(fù))一樣,被認(rèn)為是真。<?phpvar_dump((bool) "");      //bool(false)var_dump((bool) 1);       //bool(true)var_dump((bool) "1");     //bool(true)var_dump((bool) array()); //bool(false)var_dump((bool) "false"); //bool(true)?>

          2. 轉(zhuǎn)換為整型要明確地將一個值轉(zhuǎn)換為整型,可以使用(int)或(integer)強制轉(zhuǎn)換。不過大多數(shù)情況下都不需要強制轉(zhuǎn)換,因為當(dāng)運算符、函數(shù)或流程控制需要一個整型參數(shù)時,值會自動轉(zhuǎn)換。還可以通過函數(shù)intval()將一個值轉(zhuǎn)換成整型。當(dāng)從布爾值轉(zhuǎn)換為整數(shù)值時,false將被轉(zhuǎn)換為0,true將被轉(zhuǎn)換為1。當(dāng)從浮點數(shù)轉(zhuǎn)換成整數(shù)時,將向零取整。如果浮點數(shù)超出了整數(shù)范圍,則結(jié)果不確定,因為沒有足夠的精度把浮點數(shù)轉(zhuǎn)換為確切的整數(shù)結(jié)果,在此情況下沒有警告,甚至沒有任何通知。注意:不要將未知的分?jǐn)?shù)強制轉(zhuǎn)換為整數(shù)型,這樣會導(dǎo)致不可預(yù)料的結(jié)果。如:<?phpecho (int) ( (0.1+0.7) * 10 );  //顯示7?>

          3. 轉(zhuǎn)換為字符串一個值可以通過在其前面加上(string)或用str-val()函數(shù)來轉(zhuǎn)變成字符串。在一個需要字符串的表達式中,字符串會自動轉(zhuǎn)變。例如,在使用函數(shù)echo()或者print()時,或在一個變量和一個字符串進行比較時,就會發(fā)生這種轉(zhuǎn)變類型。   

          ?一個布爾型的true值被轉(zhuǎn)換成字符串"1",而布爾型的false值將被轉(zhuǎn)換成""(空的字符串)。這種轉(zhuǎn)變可以在布爾值和字符串之間隨意進行。   

          ?一個整數(shù)或浮點數(shù)將被轉(zhuǎn)變?yōu)閿?shù)字的字面樣式的字符串(包括浮點數(shù)中的指數(shù)部分),使用指數(shù)計數(shù)法的浮點數(shù)(16.1E+6)也可轉(zhuǎn)變。   

          ?數(shù)組轉(zhuǎn)換成字符串"Array",因此,echo()和print()無法顯示出數(shù)組的值。如果顯示一個數(shù)組值,可以用echo $arr['foo']這種結(jié)構(gòu)。   

          ?資源總會被轉(zhuǎn)變成"Resource id #1"這種結(jié)構(gòu)的字符串,其中的1是PHP分配給該資源的獨特數(shù)字。   

          ?NULL總是被轉(zhuǎn)變成空的字符串。

        當(dāng)前文章標(biāo)題:類型轉(zhuǎn)換

        當(dāng)前URL:http://www.margaycoffee.com/news/wzzz/3235.html

        上一篇:特殊類型

        下一篇:檢測數(shù)據(jù)類型

        網(wǎng)站建設(shè)、網(wǎng)絡(luò)營銷咨詢專線:181-8386-5875(點擊可一鍵撥號)
        在线一区视频二区三区,av无码久久久不卡网站,亚洲国产人成精品,国产成人白丝视频
        • <abbr id="qqgmy"></abbr>
          <menu id="qqgmy"><abbr id="qqgmy"></abbr></menu>
        • <rt id="qqgmy"><code id="qqgmy"></code></rt>