PHP学习(php概念、基本语法、流程控制)
一、初識PHP腳本
1.PHP開始標記
2.PHP結束標記
?>3.頁面最終是通過HTML,CSS,JS來進行展示的
4.PHP代碼可以嵌入html代碼中,可以嵌入到任意位置,并且可以嵌入多個php代碼,必須在php文件中嵌入才生效。
如果建立的是html文件,中間嵌有php代碼,apache默認是不會將文件傳送到PHP應用服務器,因為建立的是HTML文件,會直接返回給請求方。
5.文件末尾的?>結束標簽可以省略
6.指令分隔符 ;
1.在一些PHP語句的結尾要加上 ;表示一句話的結束。
2.結束標記?>隱含了一個 ;
所以在?>之前的PHP語句可以省略掉 ;
7.注釋
多行注釋
/*
多行注釋
*/
單行注釋
//單行注釋
8.空白的處理
空格,tab制表符,換行 這些寫在PHP代碼里是沒有影響的
可以利用這些來增加代碼的可讀性。
二、變量
變量是用于臨時存儲值的容器
1.變量的聲明
在其他語言中,在使用變量前,事先聲明一下!
注意:在PHP程序中,使用變量之前是不需要聲明的!(可以直接使用)
變量用于存儲 數字、文本字符串 或者數組的!
$變量名=數據(值)
2.變量的銷毀
unset($變量名稱)
3.變量的命令規則
1.變量名稱嚴格區分大小寫
$name,$NAME,$Name都是不同的變量
2.字母或者下劃線開頭
總結:變量名只能包含 字母 數字 下劃線并且以字母或者下劃線開頭!
注意:最好不要用關鍵字作為變量名稱
4.可變變量
例如:
輸出結果為:
c5.變量的引用賦值
引用賦值相當于給變量加了一個別名
輸出結果:
20三、變量類型
PHP是一種弱語言
概述:變量類型是指保存在該變量中的數據類型
1.變量類型簡介
bool(布爾型)
在變量里存true 或 false 那么這個變量就是布爾類型
以下值被認為是false,其他值都是被認為是true
布爾值 false
0
浮點型0.0
空白字符串和字符串0//指的是直接一對單引號或者雙引號,里面沒有如何內容
例如:
沒有成員的數組
var_dump((bool)array());NULL
例如:
輸出結果 都為:
bool(false)int(整形)
在變量里面存整數,那么這個變量就是整形變量.
float(浮點型,也稱double)
在變量里面存小數,那么這個變量就是浮點型數據.
string(字符串)
需要加單引號或者雙引號
例如:
var_dump($變量名)//將變量值和類型一起輸出
單引號
PHP不會解析單引號之間的變量
雙引號
其中的變量名會被變量值代替,即PHP會解析雙引號之間的變量
例如:
輸入結果:
string te100st te100xt定界符
<<<名字
名字;
定界符可以包含單引號、雙引號、也可以解析變量
例如:
輸出結果:
string wwwww200warray(數組)
objec(對象)
resource(資源)
NULL
例如:
輸出結果:
null二、變量類型相互轉化
變量類型強制轉化
例如:
輸出結果:
int 0四、常量
常量是用于臨時(只有在我們的程序的運行過程中才存在)存儲值(數據)的容器
定義和使用
define(‘常量名稱’,常量值)或者define(“常量名稱”,常量值)
例如:
輸出結果:
10
常量的命名:
1.和變量一樣 只能包含字母、數字、下劃線 并且必須以字母或下劃線開頭。
2.按照慣例常量的名稱總是大寫的。
3.自定義常量總是嚴格區分大小寫的!
常量和變量的區別
1.常量前面沒有沒有符號$
2.常量只能用define()函數來定義,不能通過賦值語句來定義
3.常量可以不用理會變量范圍的規則而在任何地方定義和使用
4.常量一旦被定義就不能重新定義或者取消定義
5.常量的值只能是bool,int,float,string類型
預定義常量
預定義常量是PHP已經定好了的常量
有的預定義常量是以_開頭,這些預定義常量叫做魔術常量
代碼所在的位置不同 值也是不同的。
五、運算符
概述:
運算符是對一個或者多個操作數(變量或者數值)執行某種運算的符號,也稱操作符!
算術運算符
1 .+
例如:
輸出結果:
3
2. -
第一個意思:減號
第二個意思:取反
輸出結果:
-1
取反并不會影響到被取反變量本身的值!
3. *
例如:
輸出結果:
2
4. /
例如:
輸出結果:
5
5.%
取模(取余)
例如:
輸出結果:
16.++
自增
例如:
輸出結果:
2如果 ++在變量之后
例如:
輸出結果:
17.-- 自減
例如:
輸出結果:
9 <?php$a=10;echo $a--; ?>輸出結果:
10注意:自增自減是對變量來說的!
字符串運算符
1 . 連接運算符
例如:
輸出結果:
iamhacker2 = 賦值運算符
注意:賦值運算符整個語句是有值的,所以整個語句就是一個表達式,所以我們也可以怎么寫:
$a=$b=2;相當于$a=($b=2)把右邊的值賦給左邊的變量
二元運算符
+=運算符
例如:
<?php$a=1;$b=2;$a+=$b;echo $a; ?>輸出結果:
3-=運算符
<?php$a=2;$b=1;$a-=$b;echo $a;?>輸出結果:
1除此之外,賦值運算符還有
*= /= %= .=比較運算符
PHP中規定:
使用echo輸出布爾類型值的時候
echo true;它在頁面中會輸出1
echo false;它會在頁面中什么都不輸出
需要輸出布爾類型值的時候最好使用var_dump()這個函數來輸出
對操作數(按照比較運算符的要求,規則)進行比較
如果比較出的結果滿足比較運算符的要求那么結果就是true(真,成立),否則就是false(假,不成立)
1.==
比較左右兩邊數的值是否相等
例如:
輸出結果:
bool(true)2.===
全等(值要相等,類型也要相等)
例如:
輸出結果:
bool(false)3.!=
比較值是否不相等
例如:
輸出結果:
bool(true)4.<> 比較值是否不相等
5.!==不全等
如果兩邊的操作數不全等那么就是true, 否則就是false
php會自動轉化類型
例如:
輸出結果:
bool(false) <?php$a=11;$b='11';var_dump($a!==$b);?>輸出結果:
bool(true)因為類型不一樣
6.< 小于
比較兩邊的操作數
例如:
輸出結果:
bool(false) 7.> 大于 8. <= 小于等于 9. >= 大于等于邏輯運算符
概念: 對表達式進行邏輯運算,運算出的結果是布爾類型的值(true,false)
要求:
參與邏輯運算的表達式的值是布爾類型的值,如果不是布爾類型的值會被PHP自動轉化成布爾類型的值,然后參與運算。
1.邏輯與
and 或者 &&左右兩邊的表達式的值都為true時,運算結果為true。只要其中有一個false,結果就是false。
例如:
輸出結果:
bool(true)短路問題:
語言規定:
只要有邏輯運算符(邏輯與、邏輯或)那么運算結果就是一個true或false
例如:
輸出結果:
12.邏輯或
or 或者 ||左右兩邊的表達式的值有一個為true,運算的結果就是true
,只有當兩邊的值都是false的時候,結果才會是false。
例如:
<?php$a=true;$b=false;var_dump($a || $b)?>輸出結果:
bool(true)短路問題:
<?php$a=true;$b=1;&a || $ ++b;echo $b;?>輸出結果:
13.邏輯異或
xor運算規則:左右兩邊表達式的值不一樣的時候結果就是true,如果一樣那么結果就是false
例如:
輸出結果:
bool(true)4.邏輯非
!運算規則:將原來的表達式的值否定掉,原來是true,那么結果就是false
例如:
輸出結果:
bool(true)5.其他運算符
1.?:
三元運算符
格式: 表達式1?表達式2:表達式3:
如果表達式1的值為true,那么就執行表達式2,否則就執行表達式3
例如:
輸出結果:
102.@
屏蔽表達式可能發送錯誤;在表達式前面加上@
6.運算符的優先級
優先級的概念:
誰的優先級別高,就先執行誰
結合方向
規定了從那個方向開始算的問題
優先級歸納:
1)[結合方向:無]遞增遞減
2)[右]邏輯非!
3)[左]乘,除,取余
4)[左]加,減,字符串連接符
5)[無]包含大于號或者小于號的比較運算符
6)[無]不包含大于號或者小于號的比較運算符
7)[左]邏輯與&&
8)[左]邏輯或||
9)[左]? :
10)[右]賦值運算符
12)[左 ]邏輯異或xor
園括號的作用:
用圓括號可以將表達式里面的某一塊看成一個整體
例如:
輸出結果:
18另外使用括號可以增強代碼的可讀性
流程控制【1】-if語句:
1.順序執行
自上而下執行即可
對執行過程沒有控制
2.分支執行
分支執行可以根據條件是否滿足來選擇某些代碼,PHP的分支執行主要是通過兩種語句(if\switch)來實現
1.if語句:
1)單向條件
if(表達式) 語句;
表達式的值為true,那么就執行語句1,否則就不執行!
例如:
輸出結果:
12流程控制【2】-switch語句:
switch(表達式){case 值 1://case相當于==語句塊1;break;case 值 2:語句塊2;break;.......default:語句塊n}循環語句:1.while語句
while(表達式){各種語句....}2.do…while語句
do{各種語句}while(表達式);3.for語句
for(表達式a;表達式b;表達式c){各種語句}特殊的流程控制語句
1.break語句
2.continue語句
3.exit()語句 作用:結束當前整個程序的執行!
總結
以上是生活随笔為你收集整理的PHP学习(php概念、基本语法、流程控制)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CTF隐写总结
- 下一篇: CTF Crypto(密码学)总结