2017年10月11日 星期三

常數與變數

常數與變數

程式於開發初期,應先做好事前的規劃,並將預期會用到的、需要的變數、函式條列出來
如此才能減輕後續Debug(除錯)的過程,也較能掌握程式撰寫的進度

首先要瞭解資料型態有哪些:
PHP的資料型態比較寬鬆、且具有彈性
資料型態
PHP語法表示
資料型態
PHP語法表示
整數
int/integer
物件
object
字串
string
陣列
array
雙倍精準數
double/real/float




整數資料型態
整數(integer)就是不含小數的數,包含負整數與正整數
是程式裡最常用到的資料型態,其範圍可從負20億到正20
所佔記憶體4bytes
例如
$pen=24;     //鉛筆24
$vote=36656;  //有效投票張數為36656


字串資料型態
字串是「PHP」用來表示「非數值」的資料型態,包括中文字、英文字、標點符號,甚至數字也可以用字串資料型態來表示
字串所佔的記憶體大小是不一定的,因為字串越長,所佔記憶體越大
字串資料都是利用「""」來包夾,與C語言規定相同
例如
$name="王小明";
$account="b8505006";

雙倍精準數資料型態
有人翻譯為「浮點數」、「雙倍數」
就是用來表示包含小數或指數的數值資料
所佔記憶體4bytes
數值範圍從1.7E-3081.7E+308 (15digits)
基本上只要是小數,應該沒有double無法包含的數
例如
$average=90.8;     //學科平均分數為90.8
$money=7839.81;    //貨幣換算之後為7839.81


變數(Varible)
基本上只要不是固定的數(如:常數),都可稱之為變數
變數的資料型態沒有限制的

給變數一個起始值
電腦程式語言領域裡,我們稱「建立變數」為「宣告變數」
確保宣告變數開始與結束的值,都會在宣告之後,給定一個初始值
要在PHP裡宣告變數,可以直接給定一個值,便完成了宣告與啟始化的動作
例如
$A=10;
$B="";
$C=TRUE;
可知PHP特有的變數標記,在程式發現有「$」後面有一群英文符號,便會自動視為「變數」


變數的命名,必須遵守幾點原則:
1.  必須由「英文字母」、底線符號「_」開頭
2.  必須由「英文字母」、「數字」、底線符號「_」組成的變數
3.  不可由數字開頭
4.  變數中間不可有「空格」
5.  不可使用關鍵字(如:echo)

轉換變數的資料型態
PHP也可以指定變數的資料型態,寫法如下:
$num=(int)$num;         //整數
$name=(string)$name;      //字串
$score=(double)$score;    //雙倍精準數
不過PHP是可以隨時任意變換資料型態的


英文大小寫表示不同的變數
例如
$name」與「$Name」是不同的變數

幾個變數命名的參考
b_xx 當中的b表示boolean(布林值)
i_xx 當中的i表示integer(整數)
d_xx 當中的d表示double(雙倍精準數)
s_xx 當中的s表示string(字串)


跳脫字元
例如利用跳脫字元「\」,將「"」輸出,否則無法顯示引號
跳脫字元
說明
\n
換行字元(endline)
\r
使游標歸位字元(CR)
\t
跳至下一個TAB定位處
\\
顯示符號「\
\$
顯示符號「$
\"
顯示符號「"
\x00 ~ \xFF
16進位表示某一字元
\000 ~ \377
8進位表示某一字元
例如
若要顯示「"您好"」,則程式碼則要為
$say="\"您好\"";
echo $say;
常數(Constant)
如理化課程裡的「重力加速度G」、地理課程裡的「光速」、數學課程裡的「PI」等等
這些數都是不變的「常數」
要確保數值不會受到運算而變動,必須透過define()函式來建立常數
例如 define("g",9.8);
     define("light",299792.458);
     define("pi",3.141592657);
以上這些常數的數值內容,則不能再被更改
所以常數一但定義後,就不可以再做變更,即使再一次定義,也是一樣依「第一次定義值」

常數與變數最大的不同點,就在於變數有個「$」開頭,而常數沒有
值得注意的是
define("g",9.8);define("g","9.8");是不同的
因為
define("g",9.8);   當中的常數g是「數值」
define("g","9.8"); 當中的常數g是「字串」


「對」或「錯」
在程式設計領域裡,有兩個經典的常數,就是「true」與「false(對與錯)
其資料型態是boolean(布林),所以只有這兩個可能,在實際運用時,當作「開關」使用
因為truefalse是恆久不變的,所以可以用來作為一個標準的判斷值


沒有留言:

用頭腦去思考,不要人云亦云才好, 宗教信徒就是依賴與自私心態(求東求西)的人, 光是這點就很容易暴露弱點了, 難怪seafood吃飽飽,哈哈。 續上, 除了依賴與自私心態(兩者都是人性)之外。 另外也有很大一部份的人,是人云亦云的思考邏輯, 所以宗教才能譁眾取寵。