一、變量的方法。
1、empty
可以用empty的方法能夠判斷變量的值是不是為空。
①如果我們看一下某一個變量是不是已經存在過了
假如我們輸出一下
var_dump (empty($a));

返回值為true,那么說明這個變量a是空的。
那么如果我們前面定義一下變量a為10:
$a=10; var_dump (empty($a));
輸出得到false:
也就是說由此我們可以運用empty來判定變量值是否為空了。
②(如果a的值為0或者為字符串,即使定義也是為空)
2、isset
isset代表這個變量是否定義,設置。
var_dump(isset($a));

如果加上變量
$a=10; var_dump (empty($a));

★也就是說,isset方法是判斷變量是否定義。
3、unset刪除變量
$a=10; unset($a); var_dump(isset($a));
★刪除變量的方法。
4、變量的符號
每個變量在存的時候都有一個地址。
①&:在定義變量時,代表變量的地址。取地址。
假如我定義一個:$=10;
10存在了內存中的一個位置,我們根據一個地址來找到10所在的位置,然后將10取出來。
再定義一個:$b=&$a;
這個變量b不賦值,而是讓它取一個a的地址,然后交給b,輸出:

B的值等於:
也就是說這個變量a找10是根據一個地址去找的,地址是無法直接輸出的,所以只能根據地址去找,一樣的地址當然尋找一樣的結果。
②&變量地址舉例:
給b賦值
輸出得到
也就是說,a給了我們一個地址存有10,而b根據這個地址找到10后改成5了,而a再根據這個地址回去,10就已經變成5了。不管a再去找或b再去找,再不更改的情況下就都是5了。
二、運算符表達式
1、數學運算符
$a=10; $b=7; echo $a*$b;
輸出時中間可以使用+,-,*,/,%(取余),++,
弱類型語言中間用/除號除以都會得到小數,而在強類型語言中的/可能會是整數。
++a:自身加一個1(和JS一樣)
a++:先用a,再進行加1.
--:自身減1
例:
輸出得到
為什么得10呢?
因為a++代表的是先用a,再進行加1.
2、字符串
字符串之間的拼接,就用點.來連接兩個字符串。
3、比較運算符
比較運算符是用來做條件的。
假如說下列a是否大於b?
$a=10; $b=8; var_dump($a>$b)
如果說a大於b,條件滿足,會返回一個true,如果條件不滿足,就會返回fales。
注意:
=:代表賦值。
==:代表等於。
!=:不等於。<>這個符號也可以在PHP里面使用。
4、邏輯運算符
關於布爾型的數據之間的運算。
①邏輯與的運算。(and語法也可以)
如果兩個布爾型的數據進行一個與的運算:
$a = true; $b = false; var_dump($a && $b);
得出一個false的結論,也就是說,如果兩個bool型數據進行與的運算,只要其中一個有false,那么結果就是false了。當然,不管只要其中有一個flase,那么其他的多少個都是一樣的結果。
②邏輯或的運算。(or語法也支持)
$a = true; $b = false; var_dump($a || $b);
得出的結果是true。也就是說如果多個bool型數據進行或的運算,只要其中有一個true,那么結果肯定就是true。
③邏輯非的運算。(反向操作)
$a = true; $b = false; var_dump(!$a);
(!$a)或(!$b)輸出都是不一樣的結果。也就是說,邏輯非相當於取反。
5、三目運算符
三目運算符相當於一個很簡單的分支,前面可以寫一個條件 ,或者一個bool型的數據。
例:
$a = 10; $b = 8; echo $a==$b?"相等":"不相等";
如果條件成立就輸出前面的字符串“相等”。
如果條件不成立就輸出后面字符串“不相等”。

三目運算符經常用在定義男女的方式中。
6、@錯誤抑制符
例:
直接輸出一個變量a:echo $a;

這個錯誤說明沒有定義變量a。
Notice:提醒,並不是很嚴重的。(一些提醒不是真正的錯誤)
Warning:警告 嚴重。
error:錯誤! 嚴重。
既然我們現在的錯誤並不是很嚴重,我們如何不讓這個錯誤提示顯示?
那么這個時候我們就可以使用錯誤抑制符:@。
輸出:echo @$a;

這時錯誤的提示信息就已經被隱藏了。不會再讓用戶看到。但是只能屏蔽Notice和Waening。
三、語句
①分支語句
一個條件滿足就執行,不滿足就執行另外的條件。
(可以省掉花括號,但盡量不要)
(1)最簡單的分支:
$a=8; if($a<10) { echo "A小於10"; }

if ,else的寫法(和js一樣)
$a=8; if ($a<10) { echo "滿足執行"; } else { echo "不滿足時執行"; }

else if的寫法
$=8; if ($a<10) { echo "A小於10"; } else if($a<20) { echo "A在10至20之間"; } { echo "A大於20"; }

(2)switch...case第二種分支語句
$a=2; switch($a) { case 1: echo "111"; break; case 2: echo "222"; break; case 3: echo "333"; break; default: echo "777"; }
當值等於1的時候執行111的代碼,如果當值不等於以上三個,就走default.
②循環語句
與JS有差別
(1)for循環
JS寫法:
for( var i=0;i<10;i++) { alert(i); }
PHP寫法:
for($i=0;$i<10;$i++) { echo $i; }

語法是一樣的,不同的是變量名和變量方式。
如果想要實現換行,如圖下:
for($i=0;$i<10;$i++) { echo $i."<br>"; }

(2)while循環
括號里的條件如果寫true就是死循環。
$a = 10; while($a<30) { echo "{$a}<br>"; $a++; }

do...while循環:
$a=0; do { echo "{$a}<br>"; $a++; } while($a<10)

foreach循環,是專門來遍歷數組的。
foreach($attr as $v) { $v; }
$att(數組) as(拼接分割) $v(變量)
as將數組里面的每一個元素分別拿到V里面,然后可以操作$v。
