0055 PHP語言簡介和HelloWorld

第3章學(xué)習(xí)了如何編寫JavaScript代碼來動態(tài)修改網(wǎng)頁內(nèi)容值骇。

雖然JavaScript功能很強大,可以修改網(wǎng)頁上的任何元素,但是它也有一定的局限性寻馏,畢竟它主要是用于修改客戶端的顯示和邏輯。

但是在很多情況下核偿,需要通過瀏覽器和服務(wù)器進(jìn)行交互或者訪問統(tǒng)一的數(shù)據(jù)后臺的時候诚欠,它就無能為力了。

這時候,我們就需要學(xué)習(xí)一門新的編程語言轰绵,可以通過它來讓網(wǎng)頁和后臺數(shù)據(jù)進(jìn)行交互粉寞。

學(xué)哥選擇的是PHP語言,它是一門主流的編程語言左腔,學(xué)習(xí)起來比較容易唧垦,功能也非常強大。

同時液样,還需要學(xué)習(xí)數(shù)據(jù)庫編程技術(shù)振亮,因為很多時候,網(wǎng)頁后臺都是需要通過數(shù)據(jù)庫來進(jìn)行支持的鞭莽。

PHP語言簡介

PHP是一種能夠創(chuàng)建動態(tài)交互性網(wǎng)站的服務(wù)器端腳本語言坊秸。

PHP的特征:

1.免費開源

2.在服務(wù)器上執(zhí)行,結(jié)果以純文本返回瀏覽器

3.全稱是“PHP Hypertext Preprocessor"

4.PHP文件的后綴是".php"

5.PHP文件能夠包含文本澎怒、HTML褒搔、CSS以及PHP代碼

PHP能夠做什么:

1.能夠和HTML+CSS進(jìn)行組合生成動態(tài)頁面內(nèi)容

2.能夠創(chuàng)建、打開喷面、讀取站超、寫入、刪除服務(wù)器的文件

3.能夠接收網(wǎng)頁的表單輸入數(shù)據(jù)

4.能夠訪問乖酬、添加死相、修改、刪除數(shù)據(jù)庫中的數(shù)據(jù)

5.能夠處理執(zhí)行服務(wù)器的很多功能

PHP也是解釋型的編程語言咬像,這一點類似于Python編程語言算撮。

它最常用的用途是用于編寫動態(tài)交互性內(nèi)容的網(wǎng)站。

PHP編程語言的HelloWorld

打開一個文本編輯器县昂,輸入以下代碼:

<?php

echo "Hello World";

?>

然后將文件保存為hello.php肮柜,如下圖所示:

image

如果是Windows7系統(tǒng),將文件保存在這個目錄下:c:\phpcode\hello.py倒彰,如果phpcode目錄不存在审洞,則新建這個目錄。

如果是樹莓派系統(tǒng)待讳,將文件保存在這個目錄下:/home/pi/hello.py芒澜。

第1行的<?php 是PHP代碼的開始標(biāo)簽,第3行的?>是PHP代碼的結(jié)束標(biāo)簽创淡。

通過開始標(biāo)簽和結(jié)束標(biāo)簽痴晦,來將PHP代碼包圍起來,這樣機器就能識別出當(dāng)中是PHP代碼了琳彩。

第2行的echo "Hello World"; 這一行是我們學(xué)習(xí)的第1行真正的PHP代碼誊酌。它的作用就是向標(biāo)準(zhǔn)輸出控制臺輸出一個字符串部凑。

直接在操作系統(tǒng)中執(zhí)行PHP程序,則echo的作用就是向屏幕輸出一行字符串Hello World碧浊。

安裝PHP運行程序

php類似于Python代碼涂邀,是可以單獨運行執(zhí)行的。

和Python程序一樣箱锐,需要先在操作系統(tǒng)上安裝可以執(zhí)行php程序的運行程序比勉。

下面分別介紹在Windows7和樹莓派系統(tǒng)上安裝PHP運行程序。

Windows7安裝PHP運行程序

首先下載Windows7下面的程序:http://windows.php.net/downloads/releases/php-5.6.30-Win32-VC11-x64.zip

然后瑞躺,找到下載文件,解壓縮之后將目錄放到c:目錄下兴想,是這樣的:

image

然后幢哨,設(shè)置PATH環(huán)境變量:

計算機》右鍵》屬性》高級系統(tǒng)設(shè)置》環(huán)境變量》系統(tǒng)變量》選中Path,編輯》在文本末尾添加 ;c:\php-5嫂便,然后保存捞镰,確定。

image

然后毙替,打開cmd窗口岸售,輸入命令 php -version進(jìn)行驗證環(huán)境變量是否設(shè)置正確:

image

如果看到上圖所示內(nèi)容則說明PATH環(huán)境變量設(shè)置正確。

樹莓派安裝PHP運行程序

打開"LX終端"程序厂画,輸入命令行 sudo apt-get install -y php5 php5-mysql php5-fpm

image

安裝完成之后凸丸,輸入php5 -version查看是否安裝配置正確:

image

執(zhí)行PHP代碼

Windows7執(zhí)行PHP代碼

打開cmd窗口,執(zhí)行命令 php c:\phpcode\hello.php

image

可以看到袱院,程序在cmd窗口屏幕上輸出了字符串Hello World內(nèi)容屎慢。

樹莓派執(zhí)行PHP代碼

打開“LX終端”程序,執(zhí)行命令 php /home/pi/hello.php

4-1-8.jpg

可以看到忽洛,程序在終端窗口屏幕上輸出了字符串Hello World內(nèi)容腻惠。

這樣運行PHP代碼的方式和Python編程語言類似壹堰,都是由操作系統(tǒng)來通過PHP運行程序來執(zhí)行PHP代碼校套。

PHP嵌入到HTML代碼當(dāng)中

打開一個文本編輯器,輸入以下代碼:

<html>

<body>

<?php

echo "Hello World";

?>

</body>

</html>

然后將文件保存為helloworld.php亭罪,如下圖所示:

image

這段代碼复哆,如果大家學(xué)些過之前的課程關(guān)于HTML的知識的話欣喧,相信應(yīng)該很熟悉了。

前面的<html><body>和后面的</body></html>都是網(wǎng)頁的HTML固定代碼梯找。

而當(dāng)中的3行代碼就是PHP代碼续誉。

由于PHP代碼是嵌入在HTML代碼當(dāng)中的,并且通過瀏覽器進(jìn)行運行初肉,所以echo的目標(biāo)就是瀏覽器酷鸦。

PHP嵌入HTML代碼運行原理

這樣的運行原理是這樣的:

首先,通過瀏覽器訪問一個url,后綴是php臼隔,例如 http://localhost/helloworld.php嘹裂;

然后,瀏覽器將這個url請求發(fā)送到Web服務(wù)器的Web服務(wù)程序摔握;

然后寄狼,Web服務(wù)程序根據(jù)后綴名php,將此請求發(fā)送給php處理程序氨淌;

php處理程序?qū)elloworld.php代碼進(jìn)行分析泊愧,將<?php開始標(biāo)簽和?>結(jié)束標(biāo)簽當(dāng)中的內(nèi)容進(jìn)行php執(zhí)行處理;

php執(zhí)行處理的結(jié)果嵌入到HTML內(nèi)容當(dāng)中盛正,例如這里執(zhí)行之后會得到結(jié)果:

<html>

<body>

Hello World

</body>

</html>

然后删咱,Web服務(wù)程序?qū)⑵唇咏M裝好的HTML內(nèi)容返回給瀏覽器;

最后豪筝,瀏覽器根據(jù)HTML規(guī)范對HTML代碼進(jìn)行解釋痰滋,顯示相應(yīng)的內(nèi)容在瀏覽器當(dāng)中。

PHP嵌入到HTML代碼運行結(jié)果

Windows7運行phpStudy程序

要訪問一個PHP嵌入到HTML代碼的程序续崖,需要一個能夠支持PHP的Web服務(wù)程序敲街。

在之前的第2章的2.11這一節(jié)當(dāng)中,介紹了Web服務(wù)程序phpStudy严望,這里我們繼續(xù)使用這個Web服務(wù)程序多艇。

進(jìn)入目錄c:\phpStudy,運行程序phpStudy.exe像吻。然后點擊按鈕“啟動”墩蔓,啟動服務(wù)程序。

image

然后將helloworld.php文件移動到目錄c:\phpStudy\WWW目錄下:

4-1-11.jpg

然后萧豆,打開瀏覽器奸披,地址欄輸入http://IP地址/helloworld.php:

image

可以看到網(wǎng)頁瀏覽器顯示了php運行的結(jié)果,點擊右鍵涮雷,檢查阵面,查看網(wǎng)頁源代碼:

image

樹莓派配置PHP和Nginx結(jié)合

修改Nginx的配置文件,通過命令行打開這個文件:/etc/nginx/site-enabled/default

sudo vi /etc/nginx/site-enabled/default

修改location ~.php$ { 這一段內(nèi)容洪鸭,修改之前是這樣的:

4-1-14.jpg

修改之后是這樣的样刷,也就是使用命令x去掉3行行首的#注釋符號:

image

然后輸入:wq,保存退出览爵。

完成編輯配置文件之后置鼻,運行命令重啟php5-fpm和nginx:

sudo service php5-fpm restart

sudo service nginx restart

然后編寫前面的helloworld.php文件,存放到目錄/var/www/html下面蜓竹。

并使用命令sudo chmod 777 helloworld.php修改文件的權(quán)限箕母。

image

然后打開瀏覽器訪問這個網(wǎng)頁:

4-1-17.jpg
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末储藐,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子嘶是,更是在濱河造成了極大的恐慌钙勃,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件聂喇,死亡現(xiàn)場離奇詭異辖源,居然都是意外死亡,警方通過查閱死者的電腦和手機希太,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,755評論 3 385
  • 文/潘曉璐 我一進(jìn)店門克饶,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人誊辉,你說我怎么就攤上這事矾湃。” “怎么了芥映?”我有些...
    開封第一講書人閱讀 158,369評論 0 348
  • 文/不壞的土叔 我叫張陵洲尊,是天一觀的道長远豺。 經(jīng)常有香客問我奈偏,道長,這世上最難降的妖魔是什么躯护? 我笑而不...
    開封第一講書人閱讀 56,799評論 1 285
  • 正文 為了忘掉前任惊来,我火速辦了婚禮,結(jié)果婚禮上棺滞,老公的妹妹穿的比我還像新娘裁蚁。我一直安慰自己,他們只是感情好继准,可當(dāng)我...
    茶點故事閱讀 65,910評論 6 386
  • 文/花漫 我一把揭開白布枉证。 她就那樣靜靜地躺著,像睡著了一般移必。 火紅的嫁衣襯著肌膚如雪室谚。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 50,096評論 1 291
  • 那天崔泵,我揣著相機與錄音秒赤,去河邊找鬼。 笑死憎瘸,一個胖子當(dāng)著我的面吹牛入篮,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播幌甘,決...
    沈念sama閱讀 39,159評論 3 411
  • 文/蒼蘭香墨 我猛地睜開眼潮售,長吁一口氣:“原來是場噩夢啊……” “哼痊项!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起饲做,我...
    開封第一講書人閱讀 37,917評論 0 268
  • 序言:老撾萬榮一對情侶失蹤线婚,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后盆均,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體塞弊,經(jīng)...
    沈念sama閱讀 44,360評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,673評論 2 327
  • 正文 我和宋清朗相戀三年泪姨,在試婚紗的時候發(fā)現(xiàn)自己被綠了游沿。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,814評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡肮砾,死狀恐怖诀黍,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情仗处,我是刑警寧澤眯勾,帶...
    沈念sama閱讀 34,509評論 4 334
  • 正文 年R本政府宣布,位于F島的核電站婆誓,受9級特大地震影響吃环,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜洋幻,卻給世界環(huán)境...
    茶點故事閱讀 40,156評論 3 317
  • 文/蒙蒙 一郁轻、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧文留,春花似錦好唯、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至森书,卻和暖如春靶端,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背拄氯。 一陣腳步聲響...
    開封第一講書人閱讀 32,123評論 1 267
  • 我被黑心中介騙來泰國打工躲查, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人译柏。 一個月前我還...
    沈念sama閱讀 46,641評論 2 362
  • 正文 我出身青樓镣煮,卻偏偏與公主長得像,于是被迫代替她去往敵國和親鄙麦。 傳聞我的和親對象是個殘疾皇子典唇,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,728評論 2 351

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理镊折,服務(wù)發(fā)現(xiàn),斷路器介衔,智...
    卡卡羅2017閱讀 134,639評論 18 139
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,874評論 25 707
  • 用兩張圖告訴你恨胚,為什么你的 App 會卡頓? - Android - 掘金 Cover 有什么料? 從這篇文章中你...
    hw1212閱讀 12,705評論 2 59
  • 世間事本無是非炎咖,無對錯赃泡,存在即是價值,有黑才有白乘盼,有好才有壞升熊,有美才有丑,有惡才有善绸栅,于我自己级野,我歡喜過的,我悲傷...
    愛己及人閱讀 100評論 0 0