php數(shù)據(jù)類型詳解
PHP 支持8種基本的數(shù)據(jù)類型。 四種標(biāo)量類型: boolean (布爾型)integer (整型)float (浮點(diǎn)型, 也稱作 double)string (字符串) 兩種復(fù)合類型:array (數(shù)組)object (對(duì)象) 最后是兩種特殊類,就跟隨百分網(wǎng)小編一起去了解下吧,想了解更多相關(guān)信息請(qǐng)持續(xù)關(guān)注我們應(yīng)屆畢業(yè)生考試網(wǎng)!
PHP 支持8種基本的數(shù)據(jù)類型。
四種標(biāo)量類型:
boolean (布爾型)
integer (整型)
float (浮點(diǎn)型, 也稱作 double)
string (字符串)
兩種復(fù)合類型:
array (數(shù)組)
object (對(duì)象)
最后是兩種特殊類型:
resource。ㄙY源)
NULL (NULL)
為了確保代碼的易讀性,本手冊(cè)還介紹了一些偽類型:
mixed
number
callback
以及偽變量 $....
可能還會(huì)讀到一些關(guān)于“雙精度(double)”類型的參考。實(shí)際上 double 和 float 是相同的,由于一些歷史的原因,這兩個(gè)名稱同時(shí)存在。
變量的類型通常不是由程序員設(shè)定的,確切地說(shuō),是由 PHP 根據(jù)該變量使用的上下文在運(yùn)行時(shí)決定的。
<?php
$a_bool = TRUE; // a boolean
$a_str = "foo"; // a string
$a_str2 = 'foo'; // a string
$an_int = 12; // an integer
echo gettype($a_bool); // prints out: boolean
echo gettype($a_str); // prints out: string
// If this is an integer, increment it by four
if (is_int($an_int)) {
$an_int += 4;
}
// If $bool is a string, print it out
// (does not print out anything)
if (is_string($a_bool)) {
echo "String: $a_bool";
}
?>
1、布爾型是最簡(jiǎn)單的變量,布爾變量:true和false值
要設(shè)定一個(gè)布爾變量,只需將這兩個(gè)值賦給變量就行了。PHP中就算是關(guān)鍵字也可以做變量名。
<?php
$True="我是變量" . True; //這里有點(diǎn)的,書(shū)上有時(shí)印刷并沒(méi)有。
echo($True);
echo("<BR>"); //起到回車(chē)的作用
echo("我是關(guān)鍵字" . True)
?>
執(zhí)行結(jié)果:我是變量1 //這里true就是1
我是關(guān)鍵字1
true和false實(shí)際上是代表數(shù)值1和0,因此true在輸出時(shí)顯示為1,但是在給變量賦值的時(shí)候,如果賦值為1,則被當(dāng)成整型,如果被賦值為true,則被當(dāng)成布爾型
當(dāng)轉(zhuǎn)換為布爾型時(shí),以下值被認(rèn)為是false
(1)布爾值false
(2)整型值0(零)
。3)浮點(diǎn)型值0.0(零)
(4)空白字符串和字符串"0"
(5)沒(méi)有成員變量的數(shù)組
(6)沒(méi)有單元的對(duì)象(僅適用php4)
(7)特殊類型NULL
而所有其他值都被認(rèn)為是TRUE包括任何資源。
2、整型
+2147483647到-2147483647
<?php
$int_D=2147483647; //十進(jìn)制賦值
echo($int_D);
echo("<br>");
$int_H=0x7FFFFFFF; //十六進(jìn)制賦值
echo($int_H);
echo("<br>");
$int_O=017777777777; //八進(jìn)制賦值
echo($int_O);
echo("<BR>");
?>
執(zhí)行結(jié)果:
2147483647
2147483647
2147483647
如果指定一個(gè)數(shù)超出了inter的范圍,將會(huì)被解釋為float
3、浮點(diǎn)型
1.7E-308到1.7E+308
<?php
$float_1=90000000000;
echo($float_1);
echo("<br>");
$float_2=9E10;
echo($float_2);
echo("<br>");
$float_3=9E+10;
echo($float_3);
?>
執(zhí)行結(jié)果:
90000000000
90000000000
90000000000
4、字符串
PHP中有三種方式定義字符串
4.1 單引號(hào)方式。
$single_str='我是人';
如果想在瀏覽中輸出單引號(hào),必須在字符串中加入轉(zhuǎn)義符號(hào)“\”
<?
$single_str='我被單引號(hào)括起來(lái)了!<br>'; 。]敵
echo $single_str;
$single_str='輸出單引號(hào): \'嘿嘿,我在單引號(hào)里面\'<br>'; 。恿宿D(zhuǎn)義符可以輸出單引號(hào)
echo $single_str;
$single_str='輸出雙引號(hào):"我在雙引號(hào)里面"<br>'; 。]敵
print $single_str;
$single_str='輸雙美元符號(hào):$'; 。]敵
print $single_str;
?>
執(zhí)行結(jié)果:
我被單引號(hào)括起來(lái)了!
輸出單引號(hào): '嘿嘿,我在單引號(hào)里面'
輸出雙引號(hào):"我在雙引號(hào)里面"
輸雙美元符號(hào):$
4.2 雙引號(hào)方式
$Double_Str="我是人"
為了在字符串中輸出各種特殊字符,可以使用轉(zhuǎn)義符
$Double_Str="輸出美元符號(hào):\$";
$Double_Str="輸出反斜杠:\\";
<?
$Double_str="我被雙引號(hào)括起來(lái)了!<br>";
echo $single_str;
$single_str="輸出單引號(hào):'嘿嘿,我在單引號(hào)里面'<br>"; //不需要轉(zhuǎn)義符
echo $single_str;
$single_str="輸出雙引號(hào):\"我在雙引號(hào)里面\"<br>"; //需要轉(zhuǎn)義符
print $single_str;
$single_str="輸出美元符號(hào):\$ <br>"; //需要轉(zhuǎn)義符
print $single_str;
$single_str="輸出反斜杠 :\\ <br>"; //需要轉(zhuǎn)義符
print $single_str;
?>
執(zhí)行結(jié)果:
輸出單引號(hào):'嘿嘿,我在單引號(hào)里面'
輸出雙引號(hào):"我在雙引號(hào)里面"
輸出美元符號(hào):$
輸出反斜杠 :\
4.3 Heredoc 方式給字符串賦值
<?
$zjj1_str =<<<zjj 。=<<<這個(gè)相當(dāng)于鏈接符,獲取zjj到zjj中間的數(shù)據(jù)
你好<br>
美元符號(hào) $ <br> 。痾jj1和zjj都是可以隨便起名字的。
反斜杠 \<br>
"我愛(ài)你"<br>
'我恨你'
zjj;
echo $zjj1_str;
?>
執(zhí)行結(jié)果:
你好
美元符號(hào) $
反斜杠 \
"我愛(ài)你"
'我恨你'
4.4 串中的變量
<?php
$str_1 = "我是變量的值!";
$str_2 = "str_1 : $str_1<br>"; //雙引號(hào)字符串中包含變量$str_1
echo $str_2;
$str_1 = '我是變量的值';
$str_2 = 'str_1 : $str_1<br>'; //單引號(hào)中包含字符串的值
echo $str_2;
$str_1 = "我是變量的值!";
$str_2 = "str_1 : $str_12 <br>"; //引用的變量名后,多了個(gè)字符2即$str_12
echo $str_2;
$str_1 = "我是變量的值!";
$str_2 = "str_1 : ${str_1}2 <br>"; //引用的變量名后,多了個(gè)字符2即$str_12
echo $str_2;
?>
執(zhí)行結(jié)果:
str_1 : 我是變量的值!
str_1 : $str_1
str_1 :
str_1 : 我是變量的值!2
從輸出可以看出,雙引號(hào)字符串是賦值的含義,直接輸出變量的值。而單引號(hào)的字符串,包含的是變量的名稱,可以理解為直接運(yùn)行語(yǔ)句的結(jié)果,直接輸出變量的名稱而不是變量的值。
$str_2 = "str_1 : $str_12 <br>"; 這句如果變量后面跟著非空格的字符,會(huì)讓編譯器糊涂,會(huì)把$str_12當(dāng)成變量,而上面又沒(méi)有定義,因此會(huì)輸出空值。為了解決這個(gè)問(wèn)題可以用${str_1}2 或{$str_1}2 這個(gè)來(lái)表達(dá)。
【php數(shù)據(jù)類型詳解】相關(guān)文章:
php數(shù)據(jù)類型轉(zhuǎn)換詳解10-12
PHP數(shù)據(jù)類型之?dāng)?shù)組變量詳解10-04
PHP 數(shù)據(jù)類型08-31
PHP的數(shù)據(jù)類型08-03
PHP之常量、數(shù)據(jù)類型09-05
PHP中$-SERVER的詳解06-25