2018年12月7日 星期五

DW_PHP_AJAX_CH2 PHP語言入門_(1)基本觀念_上

雖然說使用Dreamweaver開發PHP動態網頁可以不用手動撰寫任何的程式敘述, 完全利用Dreamweaver所見即所得的特點來建構動態網頁, 但是, 總會遇到未如預期的狀況而需要手動進行程式碼的編寫或編修, 如果沒有一些PHP的入門功夫, 恐怕連從哪裡下手都搞不清楚。

[伺服端與使用者端]

客戶端(Client):泛指透過HTTP(Hypertext Transfer Protocol)通訊協定提出要求之一端, 即上網的那一端。
伺服端(Server):放置網頁的那一端, 即提供HTML文件之一端。

Client與Server亦可同在一部機器上, 即單機作業。像我們在本機中啟動網頁伺服器, 再打開瀏覽器來瀏覽我們撰寫的PHP動態網頁, 這就是單機作業。

[初試身手]

現在, 請開啟Dreamweaver, 我們將以程式碼撰寫的方式來完成第1個動態程式網頁。

1. 在Dreamweaver開啟的提示畫面中選擇新增PHP文件:



若開啟Dreamweaver未見到提示畫面, 或是已進入編輯模式, 則可點選主功能表項目【檔案】/【開新檔案】, 在『新增文件』設定面板中選擇新增PHP文件:

2. 按下工具列上的 按鈕, 將工作模式切換到程式碼編輯。

 3. 在<body>與</body>標籤中輸入下列程式碼, 功能為顯示系統日期。
 
今天日期:
<? 
echo date("Y年m月j日");
?>
『<?』與『?>』用來包括PHP程式敘述的區段, 也就是說:被『<?』與 『?>』包括起來的內容都會被視為PHP程式敘述, 而未被『<?』與『?>』包括起來的內容則都視為HTML標籤敘述, 當使用者端的瀏覽器向伺服器要求一個PHP程式網頁時, 伺服器會將程式網頁中沒有被『<?』與『?>』包括起來的HTML標籤敘述直接輸出到使用者端的瀏覽器, 至於被『<?』與『?>』包括起來的PHP程式敘述, 伺服器則會先加以解譯, 然後再把解譯後的『結果』輸出到使用者端的瀏覽器。

4. 請將檔案存放於預設的網頁根目錄(c:\AppServ\www\)裡, 並將其命名為『myDate.php』。

5. 按下工具列上的 按鈕, 將工作模式切換到所見即所得的「設計」模式。

!!!TIP

PHP 從 5.1 版本開始, 預設取得的系統日期時間為美國時區UTC,若伺服器是位於台灣時將產生8個小時的延遲, 如果發現所取得的系統日期時間不正確時, 可在 php.ini 組態設定檔裡設定正確的時區:
1. 點擊【開始】按鈕/【所有程式】/【AppServ】/【Configuration Server】/【PHP Edit the php.ini Configuration File】。
2. 在 php.ini 中找到 :
[Date]
; Defines the default timezone used by the date functions
; date.timezone = 
改成
[Date]
; Defines the default timezone used by the date functions
date.timezone = Asia/Taipei
3. 重新啟動Apache伺服器。

若不願意在php.ini 組態設定檔裡設定時區, 亦可於動態網頁中直接使用『date_default_timezone_set()』函數進行設定,例如:
<?
date_default_timezone_set('Asia/Taipei');
 echo date('D,F j, Y, H:i:s A');
?>

[瀏覽PHP網頁與開啟PHP檔案]

開啟PHP檔案:即執行瀏覽器功能表的『檔案/開啟舊檔』。
瀏覽PHP網頁:即在瀏覽器的『網址』欄位輸入網址。PHP程式網頁必須透過IIS/Apache 等往誒伺服器來執行才有效。

PHP動態網頁在設計完成後, 除了可按下工具列的 按鈕來測試執行結果外, 亦可在Dreamweaver按下F12功能鍵, 以預設的瀏覽器來觀看執行結果。

若採取『開啟』PHP檔案(執行瀏覽器功能表的『檔案/開啟舊檔』, 未透過IIS/Apache 網頁伺服器來執行), 當我們開啟PHP檔案只會顯示『現在日期時間:』。若有安裝網頁編輯器, 例如Dreamweaver, 則執行瀏覽器功能表的【檔案】/【開啟舊檔】時, 因為檔案關聯的因素, 將會自動啟動Dreamweaver來進行PHP網頁程式的編輯。

!!!TIP

當使用者端的瀏覽器向伺服器要求一個PHP程式網頁時, 伺服器會將程式網頁中沒有被『<?』與『?>』包括起來的HTML標籤敘述直接輸出到使用者端的瀏覽器, 至於被『<?』與『?>』包括起來的PHP程式敘述, 伺服器則會先加以解譯, 然後再把解譯後的『結果』輸出到使用者端的瀏覽器, 所以透過瀏覽器的【檢視】\【原始檔】時將看不到PHP程式敘述。


 [結論]

  • PHP程式網頁的命名不是『*.htm』而是『*.php』!
  • 請注意:PHP程式是嵌入在HTML裡的, 撰寫PHP程式網頁, 程式敘述區段一定要放在『<?』與『?>』之間。
  • PHP程式敘述與HTML標籤不同, PHP程式敘述是有分英文大小寫的。
  • PHP程式網頁一定要『執行』, 在單機上的瀏覽器並沒有辦法開啟我們所製作完成的網頁的能力, 因此我們必須透過有能力開啟PHP網頁的網路伺服器模擬機制IIS(Internet Information Server) 或Apache Web Server 來建立我們 PHP 的作業平台, 也就說我們要觀看我們程式網頁設計的成果就必須先啟動網頁伺服器。
  • 即使已經安裝了Apache或IIS而且已經啟動它們了, 仍然不能以瀏覽器『開啟』的方式(以開啟舊檔的方式)來觀看程式網頁, 而必須使用『瀏覽』的方式(輸入網址)來觀看程式網頁。

沒有留言:

張貼留言