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