




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
精品文檔-下載后可編輯采用服務(wù)器端嵌入式腳本語(yǔ)言PHP3進(jìn)行Linux下的網(wǎng)站開發(fā)服務(wù)器端腳本技術(shù)是一種非常有用的東西,將它和客戶端腳本技術(shù)聯(lián)合起來(lái)應(yīng)用可以制作出功能極其強(qiáng)大的頁(yè)面。就象熱火朝天的ASP,那就是一種服務(wù)器端腳本技術(shù)。通常用的服務(wù)器端腳本技術(shù)是CGI,NSAPI/ISAPI/FastCGI等等都是對(duì)它的改善和擴(kuò)展。至于用什么語(yǔ)言來(lái)實(shí)現(xiàn)CGI技術(shù),沒(méi)有任何規(guī)定,大家一般使用Perl,因?yàn)樗淖址δ鼙容^強(qiáng)大。到了需要速度的場(chǎng)合,就用C來(lái)實(shí)現(xiàn)。用Perl/C等寫的CGI腳本是一種“非嵌入式”的服務(wù)器端腳本,因?yàn)樗且粋€(gè)單獨(dú)的程序,而不是嵌在HTML文檔中再通過(guò)另一個(gè)程序解釋替換。例如,下面的Perl程序:
print"Content-type:text/html\n\n";
Hello!
HeadofHTML
print"aaa";
print"";
它中間雖然也有一段似乎是HTML文檔,但那是HTML文檔嵌入了Perl程序,而不是反過(guò)來(lái)。
PHP是一種跨平臺(tái)的服務(wù)器端腳本技術(shù)。它最初是一個(gè)人為了寫他的主頁(yè)而用Perl寫
的"包裝"程序,后來(lái)因?yàn)橛玫娜硕嗔?,就發(fā)展了起來(lái),現(xiàn)在已經(jīng)是3.0版,用C實(shí)現(xiàn),
在Unix和Windows95/NT下都可以跑起來(lái)。
一、編譯安裝
PHP3.0有幾個(gè)平臺(tái)下的編譯好的版本,也有源碼版本。
PHP3.0內(nèi)部帶了對(duì)幾種常用數(shù)據(jù)庫(kù)的支持,包括:Sybase,Oracle,mSQL,mySQL,PostgresQL,
ODBC,dBase等。如果編譯它的源碼時(shí)選擇對(duì)這些數(shù)據(jù)庫(kù)中某幾個(gè)的支持,那么必須事先
有它們的客戶庫(kù)。
在Unix下編譯的方法是:先解壓,然后運(yùn)行"./configure[選項(xiàng)]",再運(yùn)行"make"和"makeinstall".
選項(xiàng)中比較重要的有:"--enable-msql=msql庫(kù)路徑"等數(shù)據(jù)庫(kù)選項(xiàng)和"--enable-apache=
apache源程序路徑"等。
如果選擇了--enable-apache,那么編譯出的將是一個(gè)庫(kù)文件,makeinstall將把這個(gè)庫(kù)安裝到apache源程序中,然后再編譯apache,可以得到支持php的apache服務(wù)器。否則,生成的將是一個(gè)解釋程序。
在Windows下,有一個(gè)安裝程序,界面不太好,而且有幾個(gè)文件會(huì)報(bào)告找不到,跳過(guò)就可以了。裝上后要把php3目錄設(shè)成網(wǎng)絡(luò)可執(zhí)行的。Readme中說(shuō)要手工修改Registry,但似乎用不著。
安裝上之后,系統(tǒng)應(yīng)該支持對(duì).php3和.phps文件的HTTP讀取了。(在Unix下需要修改服務(wù)器的srm.conf文件,具體看README).
如果安裝時(shí)連進(jìn)了apache服務(wù)器,那么速度應(yīng)該是最快的。如果作為CGI程序執(zhí)行,速度也還將就。如果系統(tǒng)支持FastCGI,那么解釋程序也可以作為FastCGI程序運(yùn)行。Windows下支持ISAPI的解釋程序還沒(méi)有出來(lái)。
現(xiàn)在我們來(lái)看看第一個(gè)php3腳本,照例是Hello,world.
FirstPHP3Script
從上面的例子應(yīng)該很容易看出php3文件的寫法.用括起來(lái)的部分就是php3程序段,解釋器對(duì)其余部分不作處理,將這些程序段執(zhí)行后以其輸出代替(echo語(yǔ)句輸出一個(gè)無(wú)格式字符串,printf語(yǔ)句類似于C的同名函數(shù).)
同樣可以看出,php3程序雖然是文本,但客戶端只能看見解釋后的結(jié)果(除非你提供同名的phps文件),因此對(duì)客戶端是保密的,這也是絕大部分服務(wù)器端腳本的特點(diǎn).
二、變量和數(shù)組
PHP和一般的解釋性語(yǔ)言一樣,不需要事先定義變量.如果你試著使用一個(gè)沒(méi)有賦過(guò)值的變量,那么返回的值是空字符串.對(duì)一個(gè)變量賦值則也就同時(shí)分配了這個(gè)變量的內(nèi)存.
PHP的變量名前面必須有一個(gè)$號(hào),這也是很多腳本語(yǔ)言的慣例了.
例如:
$a=1;
$b=1.0;
$c="Hello!";
都是合法的PHP語(yǔ)句.
PHP中的數(shù)組是這樣定義的:
$a[1]="a";
$a[2]="b";
它會(huì)自動(dòng)擴(kuò)展,不必預(yù)先設(shè)定上限.
其實(shí)數(shù)組下標(biāo)也可以是一個(gè)字符串,例如:
$a["a"]=1;
$a["b"]="Hello!";
這時(shí)它實(shí)際上是一個(gè)哈希表,就象Tcl中的所謂數(shù)組一樣.
PHP中有一種類似于指針的用法,例如:
$a="b";
$$a="c";
則后一句產(chǎn)生了一個(gè)$b變量并給它賦值"c".
PHP變量之間的運(yùn)算符和C的類似,例如也有:
+,-,*,/,%,^,
$i["c"]=1;
reset($i);
for($j=1;$j
$k=key($i);
echo"$k,$i[$k]";
echo"
";
next($i);
}
PHP中的控制流語(yǔ)句與C幾乎完全一樣,也有if...else,while,for,switch,break,exit.
三、函數(shù)的使用
PHP3.0中的函數(shù)如下例:
functiontest($a,$b){
return$a*2+$b;
}
函數(shù)和C差不多,可以遞歸調(diào)用.
PHP3.0的變量作用域規(guī)定也類似于C,即缺省認(rèn)為主程序中的變量是全局變量,而函數(shù)中的變量都是局部變量,即使有同名的全局變量也不使用.
如果在函數(shù)中要使用全局變量,則必須在函數(shù)頭上用global語(yǔ)句聲明,
例如:
function...{
global$a,$b;
...
}
如果函數(shù)頭上用static語(yǔ)句聲明了一些變量,那么這些變量是靜態(tài)的,其含義與C語(yǔ)言中的相同.
PHP中提供include語(yǔ)句,類似于C的#include.
include語(yǔ)句包含的可以是任意文件,它的內(nèi)容將出現(xiàn)在最后輸出的頁(yè)面上.如果該文件中有括起
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 城市交通擁堵與城市居住成本關(guān)系分析考核試卷
- 滿意度調(diào)查結(jié)果在典當(dāng)行服務(wù)改進(jìn)中的應(yīng)用案例考核試卷
- 制冷系統(tǒng)性能優(yōu)化分析考核試卷
- 中醫(yī)康復(fù)護(hù)理護(hù)理質(zhì)量持續(xù)改進(jìn)機(jī)制考核試卷
- 遼寧省盤錦市雙臺(tái)子區(qū)2024-2025學(xué)年八年級(jí)下學(xué)期期末考試數(shù)學(xué)試卷(含答案)
- 安理工選礦學(xué)教案第6章 搖床選煤
- 電力系統(tǒng)能效提升技術(shù)應(yīng)用指南
- 藝術(shù)作品觀眾反饋感知體系
- 山東省濟(jì)南市槐蔭區(qū)2023-2024學(xué)年八年級(jí)上學(xué)期期中地理試題(解析版)
- 剎車模型與限速模型(模型與方法)-2026年高考物理一輪復(fù)習(xí)解析版
- 2022年重慶市汽車運(yùn)輸(集團(tuán))有限責(zé)任公司招聘考試真題
- GB/T 21449-2008水-乙二醇型難燃液壓液
- GB/T 11032-2020交流無(wú)間隙金屬氧化物避雷器
- 移植患者健康宣教 - 副本課件
- DB52∕T 1454-2019 精神病??谱o(hù)理服務(wù)基本規(guī)范
- 醫(yī)養(yǎng)結(jié)合五大模式和八大服務(wù)內(nèi)容
- GFL-V型防雷分線柜.說(shuō)明書(彈簧式接線9、10、13個(gè))20131213版教學(xué)內(nèi)容
- DBJ51 014-2021 四川省建筑地基基礎(chǔ)檢測(cè)技術(shù)規(guī)程
- 企業(yè)標(biāo)準(zhǔn)化管理手冊(cè)(完整版)
- Vivaldi天線的隱身設(shè)計(jì)
- 斷路器保護(hù)裝置單體調(diào)試報(bào)告
評(píng)論
0/150
提交評(píng)論