1,PHP變數的定義和範圍
字幕底線開頭 ^[a-zA-Z_]\w*
函數內部為生命 global的為局部範圍
聲明global或者 在檔案層級的 變數 為全域範圍
PHP預設為值傳遞,引用傳遞可以改變值傳遞效果
超全域變數
$GLOBAL儲存全域變數
$_SERVER儲存伺服器資訊
$_GET儲存get資料
$_POST儲存post資料
$_FILES儲存提交的檔案
$_COOKIE儲存得到的cookie
$_SESSION儲存session資料
$_REQUEST儲存請求資料
$_ENV儲存環境
2,PHP的常量
define()函數用來定義常量
defined()函數用來判斷常量是否被定義
特點:常量定義不$,常量的範圍為全域作用於,不能被重新賦值
魔術常量:常用 __FILE__獲得當前二年間的絕對路徑和檔案名稱
__LINE__ 檔案當前的行號
3,PHP運算子
4,PHP控制結構
return函數中使用return立即停止函數的執行,將函數的值返回;
在php指令碼中使用,會立即停止指令檔代碼的執行
包含檔案不存在或者語法錯誤的時候require是致命的,include不是 require需要放在頭部預先載入,而include放在檔案的任何位置隨時載入
還有一對擴充函數:require_once() include_once()
5,PHP函數
函數參數的傳遞預設是值傳遞,所以即使在函數內部改變了參數的值,也不會改變函數外面參數的值
想要函數的參數採用引用傳遞,在參數前面 &
6,PHP的資料類型
·標量類型
字串 整形 浮點型 布爾型
·複合類型
數組 對象
·特殊類型
null resource
·字串
單引號執行速度快 雙引號識別變數
常用的字串函數(重點)
尋找
strpos(haystack,needle);尋找字串首次出現的位置
······
strrchr();從字串最後一次出現的位置開始,返回字串
替換
trim()去掉字串首尾空白字
str_replace(尋找的字串,替換的字串,在那個字串中尋找)
substr_replace()把字串的一部分替換成另一個字串
substr(string,start,length)返回字串的字串
比較
strcasecmp()一步區分大小寫方式比較字串,返回0表示字串相等
將字串全部轉化為小寫 strtolower($str1)
將字串全部轉化為大寫 strtoupper($str2);
拆分
explode()將字串根據某個定界符分割成一個數組
implode()通過一個定界符是數組元素串連成一個字串
Regex匹配
preg_match() 進行Regex匹配
preg_replace(Regex,替換的結果,尋找的子付出啊)
$sina = preg_replace('/^(http:\/\/)?(.*)/i','www.sina.com','http://www.baidu.com');
案例(截取中
案例:
(1)匹配主機的網域名稱
(2)替換主機名稱
(3)截取中文
preg_match('/php/i','PHP is server script language',$match);
//匹配主機的網域名稱 . 匹配除了分行符號之外的所有字元
preg_match('/^(http:\/\/)?(.*)/i','http://www.baidu.com',$domain);
$sina = preg_replace('/^(http:\/\/)?(.*)/i','www.sina.com','http://www.baidu.com');
案例:
2013年4月20日雅安發生了7.0級地震,黨中央高度重視.....
preg_match('/php/i','PHP is server script language',$match);
//匹配主機的網域名稱 . 匹配除了分行符號之外的所有字元
preg_match('/^(http:\/\/)?(.*)/i','http://www.baidu.com',$domain);
$sina = preg_replace('/^(http:\/\/)?(.*)/i','www.sina.com','http://www.baidu.com');
數群組類型:
1,數組的定義 array() 或 []
2,遍曆數組(重點)
(1)使用for()遍曆數組,適合下標從0開始,連續的整型索引數組
(2)foreach()遍曆數組
3,數組指標
(1)current()獲得當前數組指標指向的數組元素
(2)next() 將數組的指標指向下一個
(3)prev() 將數組的指標向前移動一個
(4)reset() 重設數組指標
(5)end() 將數組指標移動到最後
4,常用的數組函數
array_push() 入棧,講一個或多個元素壓入數組的末尾
array_pop() 出棧,將數組最後一個元素彈出
array_shift() 將數組開頭的元素移出
array_unshift() 在數組開頭插入一個元素
排序
sort() 刪除數組原有的鍵名
rsort() 對數組逆向排序,刪除數組原有的鍵名
asort() 對數組正向排序(按照元素值),不會刪除數組原有的鍵名
ksort() 對數組按照鍵名排序