這篇文章主要介紹了php的常量和變數執行個體詳解的相關資料,需要的朋友可以參考下
php的常量和變數執行個體詳解
【PHP在命令列下接收參數】
如果在命令列調試php,傳入的參數通過$argv擷取,注意其中包含了檔案名稱這一個元素,數組中元素的個數通過$argc擷取。
【可變變數】
指的是變數的名稱可變,變數的標識符可以由另一個變數的值來代替。
例如:第二個語句是為argv1這個變數賦值。
<?php $varName = 'argv1'; $$varName = 'value1'; var_dump($argv1); ?>
【常量】
使用define定義,不可刪除和修改,調用時直接寫名稱。define還有三參數的版本,第三個參數代表是否大小寫不敏感,預設為false。
<?php define('pi',3.14); echo pi; ?>
技巧:先檢查常量有沒有被定義再定義,使用defined函數:
<?php if(!defined('pi')) define('pi',3.14); else echo 'pi has been defined<br>'; ?>
對於有特殊符號的常量,需要使用constant函數來調用,注意這時常量名應該加引號,例如:
<?php if(!defined('= =')) define('= =','puzzled'); else echo 'pi has been defined<br>'; echo constant('= ='); ?>
擷取已經定義的所有常量:
<?php var_dump(get_defined_constants()); ?>
【魔術變數】
__LINE__擷取當前所在的行,__FILE__擷取當前路徑。
一個應用:
利用str_replace函數替換檔案中的檔案名稱為路徑+檔案名稱來保證檔案路徑變化仍可以訪問。
str_replace(<要尋找的值>,<替換為的值>,<被搜尋的字串>,<替換計數變數(可選)>);
<?php define('ROOT',str_replace('a.php','',__FILE__)); echo ROOT; ?>
【進位】
在數字前加0是八進位,加0x是十六進位。
【字串類型】
雙引號與單引號均可,但是雙引號可以解析內部變數,但是單引號效率高。
雙引號解析變數:{ }可以保證分開變數名與其它部分。
<?php $name = "test"; echo "username is {$name}"; ?>