国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

PHP數據類型的總結分析

2020-03-22 18:00:43
字體:
來源:轉載
供稿:網友
null
布爾型bool :
對于其他類型我們可以使用(bool)或者(boolean) 進行強制轉換 eg:(bool)1=true;
以下幾種情況在強制轉化的時候默認為false:


從沒有任何標記(tags)的XML文檔生成的SimpleXML 對象bool(false)
字符串'0.0'轉換結果為bool(true)
注:-1和其他非零值(不論正負)都是true

整型integer:
整型的范圍-2147483647--2147483647 ,如果超過該值會自動轉換成float型
我們可以使用echo PHP_INT_SZIE 輸出integer的字長,和機器有關。echo PHP_INT_MAX 輸出integer的最大值
PHP中沒有整除運算 如果執行 1/2 會產生 float的0.5 如果想實現整除效果,則可以使用 (int)(1/2)=0 或者使用round(25/7)=4
強制轉化成整型 (int)或者(integer) bool型 ture 轉換成 1 ,false轉換成0

浮點型float:
取值范圍 最大值 :1.8e308 不知道最小值是多少? 求高手告知
浮點數的字長也和機器有關, 好像沒有PHP_FLOAT_SIZE 啊,求高手告知如何的到浮點數字長

字符串類型string:
定義字符串的4種方法:
1.單引號
2.雙引號
3.heredoc語法結構
4.nowdoc 語法結構(PHP5.3.0之后)
單引號
單引號定義了最原始的字符串,里面的所有內容都按字符串處理,如果字符串中包含單引號則可以用/轉義
雙引號
雙引號定義的字符串會解析一些特殊字符(/n,/b)和變量
可以將變量放置在雙引號中的方式來代替將變量轉換成 字符串(string):
$num=10;
$str = "$num"; //$str為字符串型的10
heredoc語法結構
標示符
字符串本身
標示符
結束時的標示符必須在一行的開始位置,而且標示符的定義格式也必須按照PHP定義的規則,只能包含數字,字母,下劃線,并且不能以數字下劃線開頭
結束標示符哪一行不允許有其他字符,可以在標示符后面添加一個分號,切分號前后也不能有tab或空格,否則PHP將無法解析該標示符,會繼續向下查找標示符,如果在文件結尾前仍沒有找到則會產生一個錯誤
heredoc就是一個沒有使用雙引號的雙引號,就是里面可以包含雙引號,且不用轉義,而且可以解析特殊字符和變量
nowdoc 語法結構
'標示符'
字符串本身
nowdoc的開始標示符必須使用單引號括起來,結束標示符和其他規則都和heredoc一樣
nowdoc就是沒有使用單引號的單引號,nowdoc包含的字符串會原樣輸出,里面包含的特殊字符和變量不會被解析

如果雙引號中包含數組變量中的幾種情況
//我們先定義以下數組
復制代碼 代碼如下:
[php]
$arr=array(
'one'= array(
'name'= 'jiangtong',
'sex'= '男'
),
'two'= 'zhaohaitao',
'three'= 'fanchangfa'
);

上面是的數組中第一個元素二維的,后兩個是一維的,我們訪問一維的時候下面幾種方式:
復制代碼 代碼如下:
[php]
echo "$arr[two]"http://key沒有單引號
echo "$arr['two']"http://key有單引號 會出錯,如果我們改成 echo "{$arr['two']}"; 則可以正確輸出結果
echo "{$arr[two]}"http://有雙大括號,但是key沒有單引號 這種情況PHP會先尋找有沒有常量banana,有的話則將其

替換,由于沒有two常量則出錯 span style="font-family: 'Courier New'; " /span
可見在訪問一維數組的時候 要么不加key不加引號(考慮到第三種情況啊),加了就要被{}括起來,可以全不加。
多維數組測試
復制代碼 代碼如下:
[php]
echo "$arr[one][name]"; //輸出結果為Array[name] 可見它返回了一個數組,只解析了一維
echo"{$arr['one']['name']}";//輸出結果為jiangtong

在多維數組的訪問中必須使用了大括號key必須使用雙引號括起來

數組類型
在字符串類型中已經提到,被大括號括起來的,如果不加key引號,是合法的,那么PHP首先會查找是否有名為key的常量,有的話就會被替換,沒有的話會產生一個找不到常量的警告才按普通字符串處理,所以建議大家一定加單引號
轉換成數組使用(array)type 或者array(type) ,但是如果將只有一個值的轉換成數組,會得到一個元素的數組,且下標為0,將NULL轉換成數組會得到空的數組
我們可以在遍歷數組的時候改變數組的值,在PHP5.0以上可以使用引用實現
復制代碼 代碼如下:
[php]
$arr=array('a','b','c','d','e' );
foreach($arr as &$html' target='_blank'>value)
{
$value=strtoupper($value);
echo $value;
}//輸出結果 ABCDE

Object對象類型
實例化對象我們使用new 加入有一個person類,我們可以通過以下方式
復制代碼 代碼如下:
[php]
$objPerson=new person();

強制轉換 (object): 如果將一個對象轉化成對象那么它沒有任何改變,對于其他任何值將會實例化一個stdclass的對象,如果該值為NULL,則會實例化一個空對象,如果 將數組轉換成對象那么會將數組的key作為對象的屬性,value為屬性值,其他類型的值則名為scalar的成員變量包含該值
復制代碼 代碼如下:
[php]
$arr=array('one'= 'a','two'= 'b' );
$obj=(object)$arr;
echo $obj- one //輸出結果為a;

注:這是由key的數組如果沒有字符key的數組,我不知道如何訪問,誰知道希望告訴小弟一下,謝謝。
對于其他值
復制代碼 代碼如下:
[php]
$obj1=(object)'jiang';
echo $obj1- scalar;//輸出結果jiang

NULL 空類型
null大小寫不敏感,NULL類型只有一個取值,表示一個變量沒有值,下面三種情況變量被認為為NULL
1.被賦值為NULL
2.尚未被賦值
3.被unset();

PHP type comparison tables Comparisons of $x with PHP functionsPHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 博野县| 日土县| 安康市| 东辽县| 明光市| 临城县| 黄龙县| 老河口市| 沽源县| 长泰县| 丹寨县| 葵青区| 平定县| 定西市| 个旧市| 武穴市| 包头市| 镇雄县| 横峰县| 湾仔区| 濉溪县| 会理县| 循化| 樟树市| 儋州市| 横山县| 湟中县| 邢台县| 商洛市| 株洲市| 微山县| 克山县| 涞源县| 化州市| 华坪县| 武乡县| 松江区| 宜丰县| 衡水市| 扎赉特旗| 鸡东县|