|
您無法在瀏覽器中通過查看源文檔的方式來查看 PHP 的源代碼 - 您只能看到 PHP 文件的輸出,即純粹的 HTML。這是因為在結(jié)果返回瀏覽器之前,腳本就已經(jīng)在服務(wù)器執(zhí)行了。 PHP標(biāo)記 在之前的的例子中的PHP代碼是以“<?php”為開始,“?>”為結(jié)束,這類似于所有的HTML標(biāo)記,因為它們都是以小于號為開始,以大于號為結(jié)束的。這些符號就叫做PHP標(biāo)記。 PHP標(biāo)記中有4中不同的風(fēng)格供我們使用 *XML風(fēng)格 <?php ?> 這是我們以后將使用的標(biāo)記風(fēng)格。他是PHP推薦使用的標(biāo)記風(fēng)格,服務(wù)器管理員不能禁用這種風(fēng)格的標(biāo)記,因此可以保證正在所有的服務(wù)器上使用這種風(fēng)格的標(biāo)記,特別是編寫用于不同服務(wù)器環(huán)境的應(yīng)用程序時,這種標(biāo)記風(fēng)格尤為重要。這種風(fēng)格的標(biāo)記可以在XML(可擴(kuò)展置標(biāo)語言)文檔中使用,如果打算在站點中使用XML,就必須使用這種風(fēng)格的標(biāo)記。 *簡短風(fēng)格 <? ?> 這種標(biāo)記風(fēng)格是最簡單的,但要使用這種標(biāo)記字符,必須在配置文件中啟用short_open_tag選項,或者啟用短標(biāo)記選項編譯PHP.我們不推薦使用這種標(biāo)記,因為雖然該標(biāo)記風(fēng)格是當(dāng)前默認(rèn)啟用的,但是系統(tǒng)管理員偶爾會禁用它,它會干擾XML文檔的聲明。 *SCRIPT風(fēng)格 這種標(biāo)記風(fēng)格是最長的,使用過javascript或vbscript的人就會熟悉這種風(fēng)格 <script language=“php”> echo (“這是類似 JavaScript 及 VBScript 語法 的 PHP 語言嵌入范例,指定腳本語言的方式”); </script> *ASP風(fēng)格 這種標(biāo)記風(fēng)格和ASP或ASP.NET的標(biāo)記風(fēng)格相同。如果在配置文件中啟用了asp_tags選項就可以使用它 <% echo (“ASP的風(fēng)格的標(biāo)記”); %> PHP輸出語句 有兩種通過 PHP 來輸出文本的基礎(chǔ)指令:echo 和 print。在上面的例子中,我們使用了 echo 語句來輸出文本 "Hello World"。 PHP注釋 對于閱讀代碼的人來說,注釋其實就相當(dāng)于代碼的解釋和說明。注釋可以用來解釋腳本的用途,腳本編寫人,為什么要按如此的方法編寫代碼,上一次的修改時間等等,PHP支持C,C++和SHELL腳本風(fēng)格的注釋。 單行注釋 # 或 // 多行注釋 /* */ 注意 : 單行注釋可以嵌套在多行注釋里使用的 但是多行注釋是無法在嵌套的 <?php echo "這是第一種例子。
"; // 本例是 C++ 語法的注釋 /* 本例采用多行的 注釋方式 */ echo "這是第兩種例子。
"; echo "這是第三種例子。
"; # 本例使用 UNIX Shell 語法注釋 ?> C 風(fēng)格的注釋在碰到第一個 */ 時結(jié)束。小心不要嵌套 C 風(fēng)格的注釋,當(dāng)注釋大量代碼時,可能犯該錯誤。 <?php /* echo "This is a test"; /* This comment will cause a problem */ */ ?> PHP數(shù)據(jù)類型 數(shù)據(jù)類型 四種標(biāo)量類型: l boolean(布爾型):表達(dá)了真值,可以為 TRUE 或 FALSE。 要指定一個布爾值,使用關(guān)鍵字 TRUE 或 FALSE。兩個都不區(qū)分大小寫。 <?php$foo=True;//assignthevalueTRUEto$foo?> |
|
當(dāng)轉(zhuǎn)換為 boolean 時,以下值被認(rèn)為是 FALSE: l 布爾值 FALSE l 整型值 0(零) l 浮點型值 0.0(零) l 空白字符串和字符串 "0" l 沒有成員變量的數(shù)組 l 特殊類型 NULL(包括尚未設(shè)定的變量) 注意:-1 和其它非零值(不論正負(fù))一樣,被認(rèn)為是 TRUE! l integer(整型) integer 為整數(shù)型別。在 32 位的操作系統(tǒng)中,它的有效范圍是 -2,147,483,648 到 +2,147,483,647 (2^31+符號位)。要使用 16 進(jìn)位整數(shù)可以在面加 0x。 整型值可以用十進(jìn)制,十六進(jìn)制或八進(jìn)制符號指定,前面可以加上可選的符號(- 或者 +)。 如果用八進(jìn)制符號,數(shù)字前必須加上 0(零),用十六進(jìn)制符號數(shù)字前必須加上 0x。 <?php $a = 1234; // 十進(jìn)制數(shù) $a = -123; // 一個負(fù)數(shù) $a = 0123; // 八進(jìn)制數(shù)(等于十進(jìn)制的 83) $a = 0x1A; // 十六進(jìn)制數(shù)(等于十進(jìn)制的 26) ?> l float(也叫浮點數(shù),雙精度數(shù)或?qū)崝?shù)) 浮點數(shù)為浮點數(shù)型別。在 32 位的操作系統(tǒng)中,它的有效范圍是 1.7E-308 到 1.7E+308。(自然底數(shù)e=2.71828183) <?php $a = 1.234; $a = 1.2e3; $a = 7E-10; ?> l string(字符串) 即為字符串變量,無論是單一字符或數(shù)千字的字符串都是使用這個變量類型。值得注意的是要指定字符串給字符串變量,要在頭尾加上雙引號 (例如: "這是字符串")。在要讓字符串換行時,可使用溢出字符,也就是反斜線加上指定的符號,若是 x 加上二位數(shù)字,如 xFE 即表十六進(jìn)位字符,詳見下表: 符號 | 意義 | " | 雙引號 | | 反斜線 | | 換行回車 | | 送出 CR | | 跳位 (TAB) |
|
|
定義字符串時,只有一種引號被視為定義符,即單引號或雙引號。于是,如果一個字符串由雙引號開始,那么只有雙引號被分析器解析。這樣,你就可以在雙引號串中包含任何其他字符,甚至單引號。下面的引號串都是合法的: $s = "I' m a student"; $s = ' I am a “student” '; 當(dāng)PHP遇到與串的開頭相對應(yīng)的引號時,便認(rèn)為已經(jīng)到了字符串尾部,于是: "Why doesn't "this" work?" 實際上被PHP語法分析器分成三個部分: "Why doesn't "——包含一個單引號的雙引號串 this——多余的字符,分析器無法處理 " work?" ——普通字符串 上面的這個例子企圖在雙引號串中包含雙引號,而分析器在遇到第二個雙引號時便認(rèn)為字符串結(jié)束了。要達(dá)到包含引號的目的, 必須分析器在遇到串內(nèi)普通引號的時候忽略它的原意,我們在引號的 前面加上一個反斜杠來告訴PHP:這個引號是字符串的一部分,正確的表示方法是這樣: "Why doesn't "that" work?" 字串可以使用字串連接符(.)來連接,如: $first_name = 'A'; $last_name = 'B'; $full_name = $first_name . ' ' . $last_name; 注意:<? $aa=5; echo $aa. ‘test<br/>’; echo "$aa test<br/>";//在雙引號中,變量名稱被變量值替代 echo ’$aa test<br/>’;;?>//在單引號中,變量名稱或其他的文本都會不經(jīng)修改而發(fā)送給瀏覽器 復(fù)合類型:array object l array(數(shù)組) array 為數(shù)組變量,可以是二維、三維或者多維數(shù)組,其中的元素也很自由,可以是 string、integer 或者 double,甚至是 array。 可以用 array() 語言結(jié)構(gòu)來新建一個 array。它接受一定數(shù)量用逗號分隔的 key => value 參數(shù)對。 key 只能是整數(shù)和字符串 $a = array( 1 => 'one', 2 => 'two', 3 => 'three' ); $a = array( 'one', 'two', 'three' );默認(rèn)下標(biāo)是從0開始 $MyArray1 = array("a", "b", "c", "d");//一維數(shù)組 $MyArray2 = array( "地支" => array("子", "丑", "寅", "卯"), "生肖" => array("鼠", "牛", "虎", "兔"), "數(shù)字" => array(1, 2, 3, 4) ); //二維數(shù)組 <?php $arr = array(12 => true,"foo" => "bar", false); echo $arr["foo"]; // bar echo $arr[12]; // 1 ?> 結(jié)果:bar1 <?php $MyArray1 = array("a", "b", "c", "d"); echo $MyArray1[1]; print_r($MyArray1); ?> 結(jié)果:b(索引值從0開始) 數(shù)據(jù)類型強(qiáng)制轉(zhuǎn)換: <?php$foo=10;//$fooisaninteger$bar=(bool)$foo;//$barisaboolean?> |
|
允許的強(qiáng)制轉(zhuǎn)換有: l (int),(integer) - 轉(zhuǎn)換成整型 l (bool),(boolean) - 轉(zhuǎn)換成布爾型 l (float),(double),(real) - 轉(zhuǎn)換成浮點型 l (string) - 轉(zhuǎn)換成字符串 l (array) - 轉(zhuǎn)換成數(shù)組 l (object) - 轉(zhuǎn)換成對象 強(qiáng)制類型強(qiáng)制轉(zhuǎn)換 (參考:PHP手冊) PHP 中的類型強(qiáng)制轉(zhuǎn)換和 C 中的非常像:在要轉(zhuǎn)換的變量之前加上用括號括起來的目標(biāo)類型。 允許的強(qiáng)制轉(zhuǎn)換有: l (int),(integer) - 轉(zhuǎn)換成整型 l (bool),(boolean) - 轉(zhuǎn)換成布爾型 l (float),(double),(real) - 轉(zhuǎn)換成浮點型 l (string) - 轉(zhuǎn)換成字符串 l (array) - 轉(zhuǎn)換成數(shù)組 l (object) - 轉(zhuǎn)換成對象 注意在括號內(nèi)允許有空格和制表符 還可以用settype ( mixed var, string type )進(jìn)行強(qiáng)制轉(zhuǎn)換. 1.強(qiáng)制轉(zhuǎn)換為布爾值 (bool)|(boolean) 要明示地將一個值轉(zhuǎn)換成 boolean,用 (bool) 或者 (boolean) 來強(qiáng)制轉(zhuǎn)換。但是很多情況下不需要用強(qiáng)制轉(zhuǎn)換,因為當(dāng)運算符,函數(shù)或者流程控制需要一個 boolean 參數(shù)時,該值會被自動轉(zhuǎn)換。 當(dāng)轉(zhuǎn)換為 boolean 時,以下值被認(rèn)為是 FALSE: 布爾值 FALSE 整型值 0(零) 浮點型值 0.0(零) 空白字符串和字符串 "0" 沒有成員變量的數(shù)組 沒有單元的對象(僅適用于 PHP 4) 特殊類型 NULL(包括尚未設(shè)定的變量) 所有其它值都被認(rèn)為是 TRUE(包括任何資源)。
信息發(fā)布:廣州名易軟件有限公司 http://m.jetlc.com
|