亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

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

PHP學(xué)習(xí)之PHP變量

瀏覽:6日期:2024-02-27 18:17:04
PHP變量 PHP3支持下面類型的變量: (一)、內(nèi)部變量 主要有整數(shù)(interger),浮點(diǎn)數(shù)(float-point numbers),字符串(string),數(shù)組(array),對(duì)象(object)。 1 初始化變量 要在PHP中初始化變量, 你只要簡(jiǎn)單的給它賦值即可。對(duì)于大多數(shù)類型,這是最直接的。對(duì)于數(shù)組和對(duì)象,可以使用其它方法。 2 初始化數(shù)組 數(shù)組可以使用這兩種方法之一來(lái)賦值: 使用一系列連續(xù)數(shù)值,或使用array()函數(shù)構(gòu)造 (見(jiàn) Array functions 部分)。 要將連續(xù)的數(shù)值加進(jìn)數(shù)組,你只需將要賦值賦給不帶下標(biāo)的數(shù)組變量。該值會(huì)作為數(shù)組的最后元素加進(jìn)數(shù)組中。 例:  $names[] = "Jill"// $names[0] = "Jill"  $names[] = "Jack"// $names[1] = "Jack" 與c、perl相似, 數(shù)組下標(biāo)也是從0開始。 3 初始化對(duì)象 要初始化一個(gè)對(duì)象,需用new語(yǔ)句建立該類型的變量。   class foo { function do_foo() { echo "Doing foo."} }   $bar = new foo;   $bar->do_foo(); 4 變量作用域 變量的作用域就是它的有效范圍。對(duì)于大多數(shù)PHP的變量只有一個(gè)作用域。在用戶自定義函數(shù)里采用局部變量作用域。 函數(shù)內(nèi)使用的變量被缺省設(shè)置為局部變量。例如:  $a=1; /* global scope */   Function Test() {  echo $a; /* reference to local scope variable */  }   Test(); 這段程序不會(huì)輸出任何的東西,因?yàn)閑cho語(yǔ)句要輸出局部變量 $a ,而函數(shù)內(nèi)的 $a 從未被賦過(guò)值。 你可能注意到這和C語(yǔ)言有點(diǎn)小小的區(qū)別,C中全局變量可以直接在函數(shù)內(nèi)引用,除非它被一個(gè)局部變量所覆蓋。 而這使得人們可能不注意修改了全局變量的值。在PHP中要在函數(shù)內(nèi)部使用全局變量必須顯式的說(shuō)明。 例如:  $a=1;  $b=2;  Function Sum() {  global $a,$b;  $b = $a + $b; }  Sum();  echo $b; 上面程序?qū)⑤敵?3"。 通過(guò)在函數(shù)內(nèi)部聲明$a和$b是全局變量,所要變量都參考全局。一個(gè)函數(shù)可以操縱的全局變量的數(shù)量沒(méi)有限制。 作用域的另外一個(gè)值得注意的地方是static 變量。 一個(gè) static變量存在于局部函數(shù)中,但當(dāng)程序離開這個(gè)函數(shù)時(shí)它的值不會(huì)丟失。 考慮下面的例子:  Function Test() {  $a=0;  echo $a;  $a++;  } 這個(gè)函數(shù)是沒(méi)用的,因?yàn)槊看握{(diào)用時(shí)它都先把$a賦為 0 然后打出"0"。 對(duì)$a++的自加沒(méi)有任何效果因?yàn)楹瘮?shù)調(diào)用結(jié)束后變量 $a 就被釋放了。要使記數(shù)程序有效記數(shù)而不丟掉當(dāng)前的記數(shù)結(jié)果,$a 要聲名為static變量: Function Test() { static $a=0; echo $a; $a++; } 現(xiàn)在,每次調(diào)用Test()函數(shù)它都會(huì)打出$a的值并把增加它的值。 當(dāng)使用遞歸函數(shù)時(shí)靜態(tài)變量是必不可少的。 遞歸函數(shù)就是調(diào)用自己的函數(shù)。寫遞歸函數(shù)時(shí)一定要十分小心, 因?yàn)樗难h(huán)次數(shù)不確定。你必須確保有足夠的條件結(jié)束遞歸過(guò)程。下面是一個(gè)簡(jiǎn)單的遞歸函數(shù)記數(shù)到10: Function Test() {  static $count=0;  $count++;   echo $count;  if($count < 10) {  Test();  } } (二) 動(dòng)態(tài)變量 有時(shí)使用可變的變量名比較方便。就是說(shuō),一個(gè)能夠被動(dòng)態(tài)賦值和使用的變量名。 一個(gè)普通變量的賦值語(yǔ)句如: $a = "hello"一個(gè)動(dòng)態(tài)變量引用該變量的值作為一個(gè)新變量的名字。 在上面例中, hello,可以通過(guò)雙$用做變量名。 例: $$a = "world"至此,兩個(gè)變量被定義并存貯在PHP符號(hào)樹中: $a 的內(nèi)容是"hello",$hello 的內(nèi)容是 "world"。 因此,語(yǔ)句: echo "$a ${$a}"的顯示結(jié)果完全等同于: echo "$a $hello"(三)PHP外部變量 1、HTML表單(GET和POST) 當(dāng)一個(gè)表單提交給PHP3 script時(shí),PHP會(huì)自動(dòng)得到表單中的變量。例如: Name:;; 當(dāng)按下”submit”后,PHP3會(huì)自動(dòng)產(chǎn)生變量:$name,其中包含了用戶輸入的所有內(nèi)容。 2、IMAGE SUBMIT 變量名 當(dāng)提交一個(gè)表單時(shí),可以通過(guò)下面標(biāo)記用一副圖代替標(biāo)準(zhǔn)的提交按鈕:   當(dāng)用戶點(diǎn)擊該圖時(shí), 兩個(gè)附加變量sub_x和sub_y就會(huì)伴隨表單一起送到server上。其中包含了用戶在圖上點(diǎn)擊處的坐標(biāo)。 有經(jīng)驗(yàn)的人可能注意到瀏覽器實(shí)際送出的名字包含一個(gè)句號(hào)而不是下劃線,但PHP自動(dòng)將句號(hào)轉(zhuǎn)換成了下劃線。 3、HTTP Cookies PHP支持HTTP cookies。Cookies在客戶端瀏覽器存儲(chǔ)數(shù)據(jù),以此和用戶保持聯(lián)絡(luò)或驗(yàn)證用戶身份。 你可以使用setcookie() 函數(shù)來(lái)設(shè)置cookies。 Cookies是HTTP請(qǐng)求頭的一部分,所以必須在任何輸出數(shù)據(jù)返回給用戶瀏覽器前 調(diào)用SetCookie()函數(shù)。它類似于 Header() 函數(shù)的限制。任何用戶端返回的cookies都將被自動(dòng)轉(zhuǎn)換為標(biāo)準(zhǔn)的PHP變量, 就象GET和POST方法的數(shù)據(jù)。 如果要在一個(gè) cookie中設(shè)置多個(gè)值,要給這個(gè)cookie的名字加上 [] , 例如: SetCookie("MyCookie[]","Testing", time()+3600); 注意:新的cookie將覆蓋掉你的瀏覽器中已有的同名cookie,除非它們具有不同的路徑或域。 4、環(huán)境變量 PHP自動(dòng)將環(huán)境變量轉(zhuǎn)換為普通的變量。 echo $HOME; /* Shows the HOME environment variable, if set. */ 盡管來(lái)自GET,POST 及 Cookie結(jié)構(gòu)的信息也會(huì)被自動(dòng)轉(zhuǎn)化為PHP的變量, 但最好明確的從環(huán)境變量中讀取它們以確保獲得正確的值。 為此可使用 getenv() 函數(shù)。也可以通過(guò) putenv() 函數(shù)設(shè)置變量。 變量類型轉(zhuǎn)換 PHP中不需要(也不支持)在變量定義時(shí)做顯式的類型聲明;一個(gè)變量的類型取決于它的值的類型。 也就是說(shuō),如果你給變量var 賦了一個(gè)字符串值,var 就成為字符串變量。如果你又賦了一個(gè)整型值給var, 它就變成了一個(gè)整型變量。 一個(gè)PHP自動(dòng)類型轉(zhuǎn)換的例子是加法操作符 '+'。如果任何一個(gè)操作數(shù)是double型,則所有的操作數(shù)按 double類型來(lái)計(jì)算, 結(jié)果也是double型的。否則,所有的操作數(shù)按integer類型來(lái)計(jì)算, 結(jié)果也是integer型的。注意:操作數(shù)本身的類型不發(fā)生變化; 類型變換僅在計(jì)算時(shí)做 $foo = "0"// $foo is a string (ASCII 48) $foo++; // $foo is the string "1" (ASCII 49) $foo += 1; // $foo is now an integer (2) $foo = $foo + 1.3; // $foo is now a double (3.3) $foo = 5 + "10 Little Piggies"// $foo is a double (15) $foo = 5 + "10 Small Pigs"// $foo is an integer (15) 要改變變量的類型,也可用settype() 函數(shù)。 1、強(qiáng)制類型轉(zhuǎn)換 PHP中的強(qiáng)制類型轉(zhuǎn)換和C中一樣: 在需要進(jìn)行類型強(qiáng)制轉(zhuǎn)換的變量前的括號(hào)中寫出想要的類型名。   $foo = 10; // $foo is an integer  $bar = (double) $foo; // $bar is a double   允許的強(qiáng)制轉(zhuǎn)換是: (int), (integer) - cast to integer (real), (double), (float) - cast to double (string) - cast to string (array) - cast to array   (object) - cast to object 注意:括號(hào)中可以含有tab或空格,下面的函數(shù)將被計(jì)算: $foo = (int) $bar; $foo = ( int ) $bar; 2、字符串轉(zhuǎn)換 當(dāng)字符串作為數(shù)值類型計(jì)算時(shí),結(jié)果的值和類型按以下方式?jīng)Q定。 如果字符串中包含任何'.', 'e',及'E'字符,則被作為double類型計(jì)算。否則,就作為integer類型計(jì)算。 該值從字符串最開始算起。如果字符串是合法的數(shù)字,則使用該值,否則值為 0 。 合法的數(shù)字是一個(gè)符號(hào)位(可選),后跟一位或幾位數(shù)字(也可含有一個(gè)十進(jìn)制的小數(shù)點(diǎn)), 后跟一位可選的指數(shù)。 指數(shù)是一個(gè) 'e' 或 'E'后跟一個(gè)或幾個(gè)數(shù)字。 $foo = 1 + "10.5"// $foo is a double (11.5) $foo = 1 + "-1.3e3"// $foo is a double (-1299) $foo = 1 + "bob-1.3e3"// $foo is a double (1) $foo = 1 + "bob3"// $foo is an integer (1) $foo = 1 + "10 Small Pigs"// $foo is an integer (11) $foo = 1 + "10 Little Piggies"// $foo is a double (11); the string contains 'e';
標(biāo)簽: PHP
主站蜘蛛池模板: 美女免费观看一区二区三区 | 国产精品二区三区免费播放心 | 黄色影片在线观看 | 午夜在线精品不卡国产 | 午夜视频免费在线观看 | 国产一区二区三区四区在线污 | 亚洲热热久久九九精品 | 精字窝地址二永久2021 | 嗯 用劲 好爽 好深 免费视频 | 日韩永久免费视频 | 国产网站免费看 | 嫩草视频在线播放 | 中国一级特黄aa毛片大片 | 一级做a爰片久久毛片看看 一级做a爰片久久毛片美女 | 在线视频中文字幕乱人伦 | 伊人久久免费视频 | 中文字幕最新中文字幕中文字幕 | 九九在线精品视频xxx | 成人免费在线网站 | 欧美一级毛片免费播放aa | 国产精品日本欧美一区二区 | 国产成人精品1沈娜娜 | 国产高清乱码无卡女大生 | 天天影视综合色 | 日韩欧美在线视频观看 | 大学生高清一级毛片免费 | 五月天婷婷视频 | 伊人久久大香线蕉精品哪里 | 99久久国产免费中文无字幕 | 国产区二区| 精品综合久久久久久98 | 欧美视频黑鬼大战白妞 | 丁香六月啪啪 | 国产成人精品综合在线 | 亚洲精品人人 | 久久草在线观看 | 国产噜噜噜视频在线观看 | 天天躁日日躁狠狠躁中文字幕老牛 | 人与牲动交xxxxbbbb | 伊人成伊人成综合网2222 | 国产亚洲精品久久久久久 |