摘要:包含有合法整型值的字符串會被轉(zhuǎn)換為整型如會被轉(zhuǎn)換為,但是不能轉(zhuǎn)換為浮點數(shù)會被轉(zhuǎn)換為整型,意味著小數(shù)部分會被舍去。說明一個參數(shù)可以接受多種不同的但不一定是所有的類型。
PHP數(shù)據(jù)類型
PHP支持八種原始的數(shù)據(jù)類型:
布爾型
/* * boolean:TRUE FALSE * 以下值被認(rèn)為是FALSE: * 布爾值FALSE本身 * 整型值0(零) * 浮點型0.0(零) * 空字符串,以及字符串"0" * 不包含任何元素的數(shù)組 * 特殊類型NULL(包括尚未賦值的變量) * ---所有其他值都被認(rèn)為是TRUE */ $foo = true; echo "foo的值是:$foo"." "; if ($foo){ echo "foo是真值"." "; } else{ echo "foo是假值"." "; }
整型
/* * Integer 整型,可以十進(jìn)制、十六進(jìn)制(0x)、八進(jìn)制(0)、二進(jìn)制(0b) * php不支持無符號整數(shù),即php中的整數(shù)都是有符號的,最大的整數(shù)為PHP_INT_MAX * 注:如果給定一個數(shù)超出了integer的范圍,將會被解釋成float,同樣如果執(zhí)行的運算結(jié)果超出了integer范圍,也會返回float */ //PHP中沒有整除運算符,1/2會產(chǎn)生float 0.5。 echo 1/2; echo " "; echo (integer)(1/2); //integer強制轉(zhuǎn)換為整型(去尾法) echo " "; echo round(1/2); //round()四舍五入 echo " "; //當(dāng)從浮點型轉(zhuǎn)換成整數(shù)時,將向下取整數(shù)(去尾法) echo (integer)0.8; //輸出:0 echo " ";
浮點型
/* * Float:浮點數(shù) * 永遠(yuǎn)不要直接比較兩個浮點數(shù)是否相等 * 要測試浮點數(shù)是否相等,要使用一個僅比該數(shù)值大一丁點的最小誤差值。 */ $a = 1.234; $b = 1.235; echo " ";
字符串
/* * string:字符串 * 一個string就是由一系列的字符組成,每個字符等同與一個字節(jié)。 * string可以用4中方式表達(dá): * 單引號:單引號內(nèi)的字符串中的變量和特殊字符的轉(zhuǎn)義序列不會被替換。 * 雙引號:會對變量和轉(zhuǎn)義字符進(jìn)行替換。 * heredoc結(jié)構(gòu): * nowdoc結(jié)構(gòu) * * 字符串細(xì)節(jié): * 一個字符串就是由一系列的字符組成,因此: * 一個字母 占一個字節(jié) * 一個數(shù)字 占一個字節(jié) * 漢字(gbk/gb2312) 占兩個字節(jié) * 漢字(utf-8) 占三個字節(jié) */ //heredoc格式 /* * 使用注意: * 1. <<<固定 AAA名稱可以變化,一般來說全部大寫 * 2. <<<標(biāo)識符 后面不能帶任何內(nèi)容,包括空格 * 3. 結(jié)束的標(biāo)識符前面不能有空格 * 4. heredoc可以解析變量和轉(zhuǎn)義字符 */ $str = <<數(shù)組
/* Array:PHP中的數(shù)組是一個有序映射,映射是一種把values關(guān)聯(lián)到keys的類型。 * -->array可以接受任意數(shù)量用逗號分割的健值對。 * PHP可以同時包含integer和string類型的鍵名。 * key:可以是一個整數(shù)integer或字符串string。 * value:可以是任意類型的值。 * * 1. 包含有合法整型值的字符串會被轉(zhuǎn)換為整型(如"8"會被轉(zhuǎn)換為8,但是"08"不能轉(zhuǎn)換為8) * 2. 浮點數(shù)會被轉(zhuǎn)換為整型,意味著小數(shù)部分會被舍去。 * 3. 布爾值會被轉(zhuǎn)換為整型。 * 4. NULL會被轉(zhuǎn)換為空字符串,即""。 * 5. 數(shù)組和對應(yīng)不能被用為鍵名。 * * 如果數(shù)組定義中多個單元都用了同一個鍵名,則只會使用最后一個,之前其他的都會被覆蓋。 */ echo " "; $arr1 = array( "key1" => "value1", "key2" => "value2" ); var_dump($arr1); echo " "; $arr2 = array( 1 => "a", 2.2 => "b", true => "c" //會對之前key為1的進(jìn)行覆蓋 ); //echo $arr2; echo不能直接對數(shù)組進(jìn)行輸出 var_dump($arr2); echo " "; //如果對給出的值沒有指定鍵名,則取當(dāng)前最大的整數(shù)索引值,則新的鍵名將是該值+1,如果指定的鍵名已經(jīng)有值,則該值會被覆蓋。 //所以key為可選項,如果未指定,PHP將自動使用之前用過的最大的integer鍵名+1作為新鍵名,最小值為0,如果當(dāng)前還沒有整數(shù)索引,鍵名為0 $arr2[] = 4; var_dump($arr2); echo " "; $arr3 = array( "a", //鍵值為0 "b", //鍵值為1 6 => "c", "d" //鍵值為7 ); var_dump($arr3); echo " "; //訪問數(shù)組:可以用array[key]語法訪問,也可以使用array{key} $arr4 = array( "key1" => "value1", "key2" => "value2" ); var_dump($arr4["key1"]); echo " "; var_dump($arr4{"key1"}); echo " "; $arr5 = array(5 =>1, 4 => 2); //數(shù)組的創(chuàng)建 var_dump($arr5); echo " "; $arr5[] = 3; //添加一個新的key-value對 var_dump($arr5); echo " "; $arr5["x"] = 5; //如果x存在,則覆蓋value,如果不存在,添加 var_dump($arr5); echo " "; unset($arr5[4]); //移除該鍵值對 var_dump($arr5); echo " "; unset($arr5); //移除整個數(shù)組 // var_dump($arr5); echo " "; //注意:這里所使用的最大整數(shù)鍵名不一定就是當(dāng)前數(shù)組中,它只要在上次數(shù)組重新生成索引后曾經(jīng)存在過就行了。 $arr6 = array(1, 2, 3, 4, 5, 6); print_r($arr6); echo " "; foreach ($arr6 as $i => $value){ //遍歷數(shù)組,移除所有元素 // echo $value; // echo "
"; unset($arr6[$i]); } print_r($arr6); //此時數(shù)組為空 echo " "; $arr6[] = 9; //此時添加一個key-value(注意鍵名為6,不為0) print_r($arr6); echo " "; $arr6 = array_values($arr6); //重新索引 $arr6[] = 10; //此時key為1,上一個key為0 print_r($arr6); echo " "; //unset()函數(shù)允許刪除數(shù)組中的某個鍵值對,但不會重新索引排序,如果需要刪除后重建索引,可以用array_value()函數(shù) //foreach as 控制結(jié)構(gòu)專門用于數(shù)組的,它提供了一個簡單的方法來遍歷數(shù)組 //對于任意integer,float,string,boolean類型,如果將一個值轉(zhuǎn)換為只有一個元素的數(shù)組(下標(biāo)為0) $var = "你好"; printf("%s", $var); // var_dump(array($var)); echo " ";對象
/* *Object:對象,要創(chuàng)建一個新的對象object,使用new語句實例化一個類。 * */ class Foo { function do_foo() { echo "doing foo.."." "; } } $bar = new Foo(); $bar -> do_foo();資源和null
/* * Resource資源類型:是一種特殊變量,保存了到外部資源的一個引用。 * * NULL:表示一個變量沒有值。 * is_null():判斷一個變量是否為NULL。 * unset():移除。 * 一個變量被認(rèn)為NULL三種情況: * 被賦值為NULL。 * 尚未被賦值。 * 被unset()。 * * mixed:說明一個參數(shù)可以接受多種不同的(但不一定是所有的)類型。 * */
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/28740.html
摘要:的類型均為類型,前者現(xiàn)在時表示主動創(chuàng)建,后者過去分詞表示被動更新。推薦單表行數(shù)超過萬行或者單表容量超過,才推薦進(jìn)行分庫分表。超過三個表禁止。防止因字段類型不同造成的隱式轉(zhuǎn)換,導(dǎo)致索引失效。說明會統(tǒng)計值為的行,而列名不會統(tǒng)計此列為值的行。 一.編程規(guī)約 (一)命名風(fēng)格 1.目錄使用小寫+下劃線 home,view,model,admin_view 2.類 UpperCamelCa...
摘要:引用賦值意味著兩個變量指向了同一個數(shù)據(jù),沒有拷貝任何東西位運算符位運算符允許對整型數(shù)中指定的位進(jìn)行求值和操作。字符串運算符連接運算符連接賦值運算符 PHP運算符 按操作數(shù): 一元運算符(只能接受一個值) 二元運算符(接受兩個值) 三元運算符(接受三個值) 按類型: 算術(shù)運算符 賦值運算符 位運算符 比較運算符 錯誤控制運算符 遞增/遞減運算符 邏輯運算符 算法運算符 /* * ...
摘要:表示該頁面可以在相同域名頁面的中展示。表示允許過濾器,指示瀏覽器在檢測到攻擊后禁止加載整個頁面。該文件也確實沒有必要記錄到日志中,而且大部分網(wǎng)站并不存在文件。 Laravel 5.5 版本官方放出了 Nginx 服務(wù)器的配置,中文文檔:服務(wù)器配置 Nginx server { listen 80; server_name example.com; root /e...
摘要:表示該頁面可以在相同域名頁面的中展示。表示允許過濾器,指示瀏覽器在檢測到攻擊后禁止加載整個頁面。該文件也確實沒有必要記錄到日志中,而且大部分網(wǎng)站并不存在文件。 Laravel 5.5 版本官方放出了 Nginx 服務(wù)器的配置,中文文檔:服務(wù)器配置 Nginx server { listen 80; server_name example.com; root /e...
閱讀 1466·2021-09-02 13:57
閱讀 1882·2019-08-30 15:55
閱讀 2419·2019-08-30 15:54
閱讀 2259·2019-08-30 15:44
閱讀 2741·2019-08-30 13:18
閱讀 491·2019-08-30 13:02
閱讀 660·2019-08-29 18:46
閱讀 1673·2019-08-29 11:25