国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

PHP服務(wù)器變量設(shè)置的方法介紹

瀏覽:2日期:2024-02-22 14:32:13

變量類型變化(juggling)

PHP不需要(或者說不支持)在聲名變量明確他的變量類型;一個(gè)變量的類型是由這個(gè)變量被使用的前后關(guān)系來決定的,也就是說,如果你給一個(gè)變量var賦了 一個(gè)字符串的值,var就變成了字符串變量。如果你再將一個(gè)整數(shù)賦值給var,他又變成了一個(gè)整數(shù)型變量。

一個(gè)PHP自動(dòng)轉(zhuǎn)化變量類型的例子是加法的操作符’+’。如果任何一個(gè)操作數(shù)都是雙精度數(shù),那么所有的操作數(shù)被當(dāng)作雙精度數(shù)求值,并且結(jié)果也是雙精度數(shù)。否則,操作數(shù)將被認(rèn)為是整數(shù),結(jié)果也將會(huì)是整數(shù)。注意這并不影響每個(gè)操作數(shù)本身的變量類型,唯一的變化就是操作數(shù)在計(jì)算的過程中被如何處理。

$foo; =; '0'//; $foo; 是一個(gè)字符串; ,值是“0”(ASCII; 48);

$foo++//; $foo; 是一個(gè)字符串,值是“1”(ASCII; 49);

$foo; +=; 1//; $foo; 現(xiàn)在是一個(gè)整數(shù)(2)了;

$foo; =; $foo; +; 1.3//; $foo; 現(xiàn)在是一個(gè)雙精度數(shù)(3.3)了;

$foo; =; 5; +; '10; Little; Piggies'//; $foo; 是一個(gè)整數(shù); (15);

$foo; =; 5; +; '10; Small; Pigs'//; $foo; 是一個(gè)整數(shù); (15)

如果你覺得上面例子中最后兩個(gè)表達(dá)式看起來有點(diǎn)奇怪的話,請(qǐng)看 “字符串的轉(zhuǎn)化”部分。

如果你希望強(qiáng)制一個(gè)變量被當(dāng)作某種固定的類型來計(jì)算,請(qǐng)看 “類型強(qiáng)制(casting)” 一節(jié)。如果你希望轉(zhuǎn)變一個(gè)變量的類型,請(qǐng)看函數(shù)“settype()”的說明。

確定一個(gè)變量的類型

因?yàn)镻HP自己決定變量的類型并且一般按照需要轉(zhuǎn)化他們,一個(gè)特定的變量的類型不是在任何時(shí)間都非常明顯。PHP包括一些函數(shù)可以找出這個(gè)變量的類型。這 些函數(shù)是gettype(), is_long(), is_double(), is_string(), is_array(), 和 is_object().

類型強(qiáng)制(type casting)

在PHP中類型強(qiáng)制同在C語言中大抵相似:將需要的類型的種類寫在要強(qiáng)制的變量的前面的圓括號(hào)中。

$foo; =; 10//; $foo; 是一個(gè)整數(shù);

$bar; =; (double); $foo//; $bar; 是一個(gè)雙精度數(shù)

以下的強(qiáng)制方式是允許的:

(int), (integer) – 強(qiáng)制成整數(shù)

(real), (double), (float) – 強(qiáng)制成雙精度數(shù)

(string) – 強(qiáng)制成字符串

(array) – 強(qiáng)制成數(shù)組

(object) – 強(qiáng)制成對(duì)象

注意在圓括號(hào)中允許制表符(tabs)和空格(spaces) ,因此下面的語句是等價(jià)的:

$foo = (int) $bar;

$foo = ( int ) $bar;

字符串轉(zhuǎn)化

當(dāng)一個(gè)字符串被當(dāng)作數(shù)字型的值來計(jì)算時(shí),他的結(jié)果和類型如下面所述的決定。

如果這個(gè)字符串含有字符’.’,’e’,或者’E’,則被當(dāng)作雙精度類型變量來處理,否則當(dāng)作是整數(shù)。

這個(gè)字符串的值由詞首部分決定。如果這個(gè)字符串以任何有效的數(shù)字的數(shù)據(jù)開始,那么這個(gè)數(shù)字?jǐn)?shù)據(jù)就是這個(gè)字符串參加運(yùn)算的值。否則,值為零(zero)。有效的數(shù)字?jǐn)?shù)據(jù)是遵循下面的這些標(biāo)記的,跟隨在一個(gè)或多個(gè)數(shù)字后面(可以包含小數(shù)點(diǎn)),跟隨在一個(gè)可選的指數(shù)后面。指數(shù)是由一個(gè)或多個(gè)數(shù)字跟在’e’或 ’E’后面構(gòu)成的。

$foo; =; 1; +; '10.5'//; $foo; 是雙精度數(shù); (11.5);

$foo; =; 1; +; '-1.3e3'//; $foo; 是雙精度數(shù)(-1299);

$foo; =; 1; +; 'bob-1.3e3'//; $foo; 是整數(shù); (1);

$foo; =; 1; +; 'bob3'//; $foo; 是整數(shù); (1);

$foo; =; 1; +; '10; Small; Pigs'//; $foo; 是整數(shù); (11)

$foo; =; 1; +; '10; Little; Piggies'//; $foo; 是整數(shù); (11)

//; 這個(gè)字符串包括字符'e'

獲取更多信息,請(qǐng)參考Unix手冊(cè)關(guān)于strtod(3)的部分。

標(biāo)簽: PHP
主站蜘蛛池模板: 资阳市| 宽城| 西华县| 渝中区| 衢州市| 商洛市| 鲁山县| 丹寨县| 邢台县| 荔浦县| 富民县| 阜宁县| 临汾市| 小金县| 嵊州市| 慈利县| 绥中县| 鸡泽县| 怀化市| 哈巴河县| 肥西县| 肥城市| 和林格尔县| 洛阳市| 江城| 阿拉善盟| 神农架林区| 金山区| 灌南县| 阿拉善右旗| 丰台区| 安国市| 深州市| 东乡| 凯里市| 汪清县| 永寿县| 合肥市| 广东省| 来凤县| 开阳县|