abstract:<?php/** * 教學內(nèi)容: 為什么說常量是只讀變量? * 1. 常量的作用: 有一個腳本中,有一些數(shù)據(jù)是不會發(fā)生變化的,例如用戶的國籍,登錄狀態(tài)等 * * 2. 常量的定義: define()和const * 1.常量其實就是只讀變量,一旦定義,不允許再賦值,更不允許刪除,特別適合于數(shù)據(jù)相對固定的
<?php
/**
* 教學內(nèi)容: 為什么說常量是只讀變量?
* 1. 常量的作用: 有一個腳本中,有一些數(shù)據(jù)是不會發(fā)生變化的,例如用戶的國籍,登錄狀態(tài)等
*
* 2. 常量的定義: define()和const
* 1.常量其實就是只讀變量,一旦定義,不允許再賦值,更不允許刪除,特別適合于數(shù)據(jù)相對固定的數(shù)據(jù),例如國籍,品牌等;
* 3.常量與超全局變量一樣不受作用域的限制,可以在函數(shù)中直接訪問;
* 4.常量不要用$開頭,推薦全部使用大寫字母,多個單詞之間推薦使用下劃線進行連接
* 5.常量只能通過define()函數(shù)定義,而不能通過賦值語句
* 6.常量必須使用標量進行初始化:字符串,數(shù)值,布爾值
*
* 3. 常量的訪問: 不能更新,不能刪除,只有讀取,并且不受函數(shù)作用域的限制
*/
/**
* 老師, 如果程序中,有一些數(shù)據(jù),我不允許用戶更新或刪除,應該怎么做呢?
* 用只讀變量就可以呀
* 只讀變量?沒聽說過
* 只讀變量,其實就是大名鼎鼎的常量呀,下面我們就用實例來演示一下常量的使用
*/
//1.常量定義
//函數(shù): define()函數(shù)
define('FACTION', '古墓派');
//關(guān)鍵字: const 關(guān)鍵字
const USER_NAME = '楊過';
//2.訪問常量: 與普通變量一樣
echo FACTION, '<br>';
echo USER_NAME, '<br>';
//常量其實就是一個只讀變量,所謂只讀,是說不能修改,不能刪除
//跟只讀文件是一樣的,不能更新,不能刪除
//FACTION = '全真教';
//echo FACTION, '<br>';
//刪除常量
//unset(FACTION);
//2. 常量的作用域: 類似預定義變量,在函數(shù)中不用聲明,可以直接使用
function demo()
{
return '我是'.FACTION.'的二掌門'.USER_NAME;
}
//訪問函數(shù)中的常量
echo demo(), '<br>';
/********************************************************/
//define()與const聲明常量的區(qū)別
//1. define()聲明的常量,可以使用標量或值為標量的變量表達式,const只能使用標量字面量
$price=99;
define('BOOK',$price);
echo BOOK, '<br>';
//用變量給const定義的常量賦值,出錯
// const BOOK1 = $price;
// echo BOOK1, '<br>';
//2.const 可以聲明類常量,define()不可以
class Test1
{
const DOMAIN = 'www.miracleart.cn';
// define('MY_HOME','合肥');
}
echo Test1::DOMAIN, '<br>';
//3.define()聲明的常量,不受命名空間的限制,const則依賴于類,類依賴于命名空間
//命名空間的知識,等學到類與對象的時候,咱們再細細聊
/**
* 老師,原來常量只有一個普通的只讀變量罷了,這么簡單呀
* 是呀,以前你是不是想太多了,學習知識,一定要結(jié)合之前學過的知識,多想多問
*/
const TEST = 999;
echo TEST;
echo 1111;
Correcting teacher:天蓬老師Correction time:2019-08-15 10:45:57
Teacher's summary:不得照抄
<?php
/**
* 教學內(nèi)容: 為什么說常量是只讀變量?
* 1. 常量的作用: 有一個腳本中,有一些數(shù)據(jù)是不會發(fā)生變化的,例如用戶的國籍,登錄狀態(tài)等
*
* 2. 常量的定義: define()和const
* 1.常量其實就是只讀變量,一旦定義,不允許再賦值,更不允許刪除,特別適合于數(shù)據(jù)相對固定的數(shù)據(jù),例如國籍,品牌等;
*