Download presentation
Presentation is loading. Please wait.
1
PHP5與MySQL 入門學習指南 凱文瑞克 著 第 9 章 常數
2
本章大綱 9-1 預設常數 9-2 自定常數 問題與討論
3
9-1 預設常數 PHP 本身提供了許多預設常數供設計者使用 一經程式定義後不會因為程式的執行而改變其內容值, 這種形式我們稱之為常數
例如 PHP_VERSION 和 PHP_OS 分別表示 PHP 的版本與 PHP 目前執行的作業平台 一經程式定義後不會因為程式的執行而改變其內容值, 這種形式我們稱之為常數 預設常數 自定常數
4
2: <title>PHP預設常數</title> 3: <body> 4: <?php
1: <html> 2: <title>PHP預設常數</title> 3: <body> 4: <?php 5: echo "PHP的版本是 " . PHP_VERSION . "<P>" ; 6: echo "目前工作平台的作業系統是". PHP_OS 7: ?> 8: </body> 9: </html> 第 5 行 PHP_VERSION 是 PHP 的預設常數代表 PHP 的版本。如圖 程式執行後會顯示你所使用的 PHP 版本編號。第 6 行顯示目前工作平台的作業系統. 上面瀏覽器連接到 Windows 2000, 而下面瀏覽器是連接到 Linux Server。在不同伺服器上執行 PHP_OS 的內容都不同。 另外, 讀者是否有注意到預設常數的名稱前面並沒有加上 "$", 而且常數名稱也一定要大寫才可以, 如果寫成小寫就不是預設成數了, 讀者請勿混淆。
5
9-2 自定常數 程式設計者要自行定義常數時可使用 define() 函數。
define() 的格式如下: define (常數名稱, 常數值, [case_insensitive]) 第一個參數是設定常數的名稱, 第二個參數是設定常數的內容, 第三個參數是一個是否視大小寫為相同的選項.
6
1: <?php 2: define (HELLO_MSG,"Good morning") ; 3: ?> 4: <html> 5: <title>自定常數</title> 6: <body> 7: <?php 8: echo "Hi, ". HELLO_MSG ."<p>" ; 9: echo hello_msg . " everyone" ; 10: ?> 11: </body> 12: </html> 在第 1-3 行 define() 函數中, HELLO_MSG 被定義成為一個常數, 內容為文字串 "Good morning"。 第 8 行 echo 字串中 HELLO_MSG 是一個常數, 所以會被定義的文字串所取代。第 9 行 echo 字串中小寫的 hello_msg並不會被解析為一個常數, 所以並不會被第 2 行所定義的文字串所取代。 範例 中 define() 函數第三個參數並沒有設定, 由此可知 define() 的預設值是將大小寫視為不同的常數.
7
1: <?php 2: define (HELLO_MSG,"Good morning",1) ; 3: ?> 4: <html> 5: <title>自定常數</title> 6: <body> 7: <?php 8: echo "Hi, ". HELLO_MSG ."<p>" ; 9: echo hello_msg . " everyone <p>" ; 10: echo "我的PHP是" . PHP_VERSION ."版"; 11: ?> 12: </body> 13: </html> 第 2 行定義常數的時第三個選項設定為 1, 這個意思表示常數的名稱不分大小寫。也就是說, HELLO_MSG 和 hello_msg 都會被看成是同一個定義過的常數。所以第 8-9 行兩個 echo 都可以正確地顯示出我們所想要顯示的訊息。第 10 行 PHP_VERSION 並沒有設定在第 1-3 行中, 為什麼沒有產生錯誤? 因為 PHP_VERSION 是 PHP 的預設常數, 所以不需要定義就可以使用.
8
問題與討論 何謂常數?與變數有何不同? 常數有幾種?分別舉例說明之。 請修改範例 9-1 可以顯示 PHP 的版本以及執行的作業系統。
請定義二個常數 member=0.6,nonmember=0.9 表示會員折扣為6折,非會員折扣為9折。請計算各類商品之會員價及非會員價,並利用表格方式完成下列價目表網頁。 原價 會員價 非會員價 休閒桌椅 10000 MP3隨身聽 5000 馬克杯 200
Similar presentations