運算符
一,算術運算符
算術運算符用語完成各種運算;
+ 加法運算符 $a+$b;
- 加法運算符 $a-$b;
* 乘法運算符 $a*$b;
/ 除法運算符 $a/$b;
% 取模運算符(求余數) $a%$b;
二,賦值運算符
$a = 5 賦值
$a += 5 加法賦值
$a -= 5 減法賦值
$a *= 5 乘法賦值
$a /= 5 除法賦值
$a .= 5 拼接賦值```
###三,字符運算符
字符運算符用于拼接字符串,拼接表示將兩個或者多個對象組合起來
例:
$a = "hello";
$b = $a . “world"; //.表示拼接前后兩個字符串
echo $b;
$b = "Hello";
$b .= “World!"; //.= 表示$b=$b."World"
$b = $b.”World”;
echo $b;
###遞增(++)和遞減(--)運算符
遞增和遞減運算符將變量的點錢值加1或減1, 可以是代碼更簡潔:
++$i/--$i 先加減 $i的值加/減1, 然后返回$i的值
$i++/$i-- 后加減 先返回$i的值, 然后再講$i的值加/減1
###五邏輯運算符
&&/and 邏輯與
|| / or 邏輯或
! 邏輯非
xor 亦或(有且僅有一個為true,則返回true)
###六比較運算符
> 大于
< 小于
>= 大于或等于
<= 小于或等于
!= 不等于
<> 不等于
== 等于
=== 絕對相等
!== 全不等
###七,三元運算符
語法:expression1 ? expression2 : expression3 ;
#二流程控制
##判斷語句
1 if語句
if(expression ){
//statement
}else if(expression){
//statement
}else{//statement
}
- Switch 語句
switch (expression){
case value:
//statementsbreak;
default://statements
}
##循環語句
1 while語句
while(expression){
//statements
}
- do...while語句
do {
//statements
}while(expression); - for循環
for(expression1; expression2; expression3){/
/statements
} - foreach foreach循環;
語法格式1
foreach(array_expr as $value){
//statements
}
語法格式2
foreach(array_expr as $key=>$value){
//statements
}
跳出循環
- break
結束循環
2 .continue
結束當前循環并從下次循環執行```
函數
函數分類
1 . 內置函數
2 . 創建自定義函數
函數簡介
函數用function關鍵字來聲明;
函數名稱是有字母或下劃線開始,中間可以包含數字;
函數名不區分大小寫,不過在調用時通常使用其定義時的格式
php不支持函數重載,所以自定義函數不能和內置函數重名;
不能再一個文件中自定義重名函數;
參數出現在括號中,如果有多個參數用逗號分隔
參數傳遞
!!在函數內部想要使用函數外部的變量,需要使用global重新修飾一下*
值傳遞(傳值)
!! 使用static修改的變量為靜態變量,特點是:只被初始化一次*
函數內對參數值得改變不會影響函數外部的值(如需改變需)
引用傳遞(傳址)
有些情況下,可能希望在函數體內對參數的修改在函數體外也能反映
使用引用傳遞參數要在參數前加上&符號
變量本身傳入,傳入后的變量與原變量建立聯系;
函數體內變量的變化,會影響到原變量本身```
默認參數值:可以為參數指定默認值,在沒有提供其他值的情況下,則將默認值自動賦值給該參數
可選參數:可以指定某個參數為可選參數,這些參數需要房子啊參數列末尾,需要指定默認值為空
##返回值
return 返回結果,是函數結束運行,并且將控制權返回被調用的行;
#變量作用域和生命周期
1 . 局部變量
函數體內定義的變量,只在函數體內可見
作用域:從聲明開始到函數結束
#include 和require
1 . include()
include()語句將在其被調用的位置包含一個文件
`例 : incl("init.php");`
2 . include_once()
`作用于include相同,但它會先驗證是否已經包含該文件,如果包含,則不再執行;`
3 . require
` 作用于include相同,但通常放在php程序最前端`
4 . require_once
`同include_once 同樣放在程序最前端;`
include 和require區別
require一個文件存在錯誤的話,那么程序就會中斷,并顯示致命錯誤;
include一個文件存在錯誤的話,程序不會中斷,而是繼續執行,并顯示一個警告錯誤
#數組
一.數組的分類
例:
$day = array(“a”,”a”,”a”); //索引數組
$week = array("a"=> "星期一", "b"=>"星期二",關聯數組
"c"=> “");
二數組的創建
1. 使用array()函數
`$arr = array();`
2. 直接對數組變量賦值
` $arr[key] = value;`
如果方括號沒有指定索引,則取當前對大整數索引,新的鍵名將是,該值+1.如若當前沒有整數索引則鍵名是0;.如果指定的鍵名已經有值了,該值將被覆蓋
3 . 使用函數創建數組
`range()建立一個包含指定范圍單元的數組`
#數組的基本操作
1 . unset($arr[0])刪除數組元素
2 . print_r($arr)打印數組元素
3 . count($arr) 取得數組大小
4 . in_array(10,$arr)檢查數組中是否包含某個值
###遍歷數組
1 . for 循環遍歷數組
2 . foreach 循環遍歷數組
##數組排序
1 . sort() , rsort()對數組進行升序和降序排列;
2 . ksort(),krsort()對數組索引進行升序或降序排列,并保持索引關系
#二維數組
遍歷
foreach($products as $product_k=>$product_v){
foreach($product_v as $key=>$val){
echo $key.'=>'.$val;}
}```
數組字符串轉換
1 . explode()返回由字符串組成的數組
$str = "1,2,3,4,5,6";
$arr = explode(',', $str);
print_r($arr);```
2 . implode()將數組元素鏈接成字符串
$arr = array('a','b', 'c', 'd');
$str = implode('|', $arr );
echo $str;```
字符串
1 . echo 打印 (可打印多個值 使用逗號鏈接);
查找和替換
1 . strpos()
int strpos ( string haystack, mixed needle [, int offset] )
strpos()函數在haystack中以區分大小寫的方式找到needle第一次出現的位置,如果沒有的話返回false;
可選參數offset指定開始查找的位置
2 . stripos()
stripos()與strpos()功能相同,只是查找時不區分大小寫
3 . str_replace()
mixed str_replace ( mixed search, mixed replace, mixed subject[, int &count] )
str_replace()函數在subject中以區分大小寫的方式搜索search,用replace替換找到的所有內容,如果沒有找到search,則subject保持不變
如果定義了可選參數count則只替換subject中count個search
截取字符串
1 . substr()
string substr ( string string, int start [, int length] )
從start位置取出length長度的字符,字符串開始位置為0;
如果沒有指定length,name默認一直到字符串末尾
2 . strstr()
string strstr ( string haystack, string needle )
strstr()函數搜索一個字符串在另一個字符串中第一次出現,該函數返回字符串其余部分(從匹配點),如果未找到所搜索的字符串則返回false
3 . stristr()
stristr()與strstr()功能一樣,只是不區分大小寫
刪除字符串
1 . ltrim
string ltrim(string str [, string charlist])
ltrim函數刪除字符串左側空格或其他預定義字符;
如果未設置charlist參數,則刪除一下字符
"\0" null;
"\t" 制表符
"\n" 換行
"\x0b" 垂直制表符
"\r" 回車
" " 空格
2 . rtrim()
string rtrim(string str [, string charlist])
rtrim函數刪除字符串右側空格或其他預定義字符;
3 . trim();
trim函數刪除字符串兩側空格或其他預定義字符;
其他處理函數
1 . strlen()獲取字符串長度
2 . strtolower()將字符串轉換為小寫字母
3 . strtoupper()將字符串轉換成大寫字母
4 . strrev()翻轉字符串
5 . nl2br()將字符串中換行(\n)轉換過成HTML換行標簽
;
6 . strip_tags()刪除字符串中HTML XHTML PHP標簽
string strip_tags ( string str [, string allowable_tags] )
可選參數allowable_tags指定要保留的標簽
7 . htmlspecialchars()函數吧一些預定義的字符轉換為HTML實體
預定義的字符:
& (和號) 成為 &
" (雙引號) 成為 "
' (單引號) 成為 '
< (小于) 成為 <
(大于) 成為 >