# 第三章 操作符與控制結構
一.字符串插入
雙引號與單引號的區別:
1.雙引號的使用:
```
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<?php
//雙引號可以解析變量和轉義字符
$username = "jack";
echo "his name is $username!";
echo "<br/>";
$username = "小東";
//如果是英文的感嘆號會正常解析變量
echo "他的名字是$username!";//他的名字是小東!
echo "<br/>";
//如果是中文的感嘆號則會解析不出來
echo "他的名字是$username!";//他的名字是
echo "<br/>";
//轉義字符在這里雖然被解析出來了,但是\n是在源代碼里換行
//瀏覽器顯示只是一個字符的位置
echo "他的名字是$username,\n他今年20歲了";//他的名字是小東, 他今年20歲了
echo "<br/>";
//為了避免出現錯誤,推薦使用字符串連接的方式
echo "他的名字是".$username.",他今年20歲了";//他的名字是小東,他今年20歲了
?>
```
2.單引號的使用:
```
<?php
//單引號只是輸出字符串字面值,
//不會解析變量和轉義字符。
//也不會進行語法加亮提示
$username = 'anllin';
echo 'his name is $username,\n his age is 20.';
//output
//his name is $username,\n his age is 20.
?>
```
部分常用的轉義字符
| 轉義序列 | 描述 |
| --- | --- |
| \n | 換行符 |
| \r | 回車 |
| \t | 水平制表圖 |
| \\ | 反斜杠 |
| \$ | 美元符 |
| \” | 雙引號 |
二.操作符
```
<?php
//算術操作符
$a = 5;
$b = 3;
echo $a + $b;
echo '<br/>';
echo $a - $b;
echo '<br/>';
echo $a * $b;
echo '<br/>';
echo $a / $b;
echo '<br/>';
echo $a % $b;
?>
8
2
15
1.66666666667
2
<?php
//復合賦值操作符
$a = 5;
$b = 3;
echo $a += $b;
echo '<br/>';
echo $a -= $b;
echo '<br/>';
echo $a *= $b;
echo '<br/>';
echo $a /= $b;
echo '<br/>';
echo $a %= $b;
echo '<br/>';
echo $a .= $b;
?>
8
5
15
5
2
23
<?php
//遞增遞減運算符
$a = 5;
echo ++$a;
echo '<br/>';
echo $a++;
echo '<br/>';
echo --$a;
echo '<br/>';
echo $a--;
?>
6
6
6
6
<?php
$a = 5;
$b = 3;
$c = 5;
$d = '5';
echo $a == $c;
echo '<br/>';
echo $a === $c;
echo '<br/>';
echo $a == $d;
echo '<br/>';
echo $a != $b;
echo '<br/>';
echo $a !== $d;
echo '<br/>';
echo $a != $b;
echo '<br/>';
echo $a > $b;
echo '<br/>';
echo $b < $c;
echo '<br/>';
echo $a >= $c;
echo '<br/>';
echo $a <= $c;
?>
1
1
1
1
1
1
1
1
1
1
<?php
$a = false;
echo ! $a;
echo '<br/>';
$b = 5;
$c = 3;
echo $b > 0 && $c > 0;
echo '<br/>';
echo $b > 0 and $c > 0;
echo '<br/>';
echo $b != 0 || $c != 0;
echo '<br/>';
echo $b != 0 or $c != 0;
echo '<br/>';
?>
1
1
1
1
1
```
運算符”and”和”or”比&&和||的優先級要低
三元操作符
```
<?php
$a = 100;
echo $a > 60 ? 'success':'fail';
?>
success
```
錯誤抑制操作符
```
<?php
echo @(100/0);
?>
```



三.控制結構
If條件判斷語句
```
<meta http-equiv="content-type" content="text/html;charset=utf-8"/>
<?php
$a = 10;
if ($a > 0)
{
echo '整數大于零';
}
echo '<br/>';
if ($a > 0)
{
echo '整數大于零';
}
else if($a < 0)
{
echo '整數小于零';
}
else
{
echo '整數等于零';
}
?>
```
Switch語句
```
<meta http-equiv="content-type" content="text/html;charset=utf-8"/>
<?php
$role = 'admin';
switch ($role)
{
case 'admin' :
echo '管理員';
break;
case 'user' :
echo '普通用戶';
break;
case 'guest' :
echo '游客';
break;
default :
echo '游客';
break;
}
?>
```
While循環語句
```
<?php
$a = 10;
while ( $a > 0 )
{
echo $a --;
echo '<br>';
}
?>
```
Do while 循環語句
```
<?php
$a = 10;
do
{
echo $a --;
echo '<br/>';
}
while ( $a > 0 )
?>
```
For循環語句
```
<?php
for($a = 0; $a < 10; $a++)
{
echo $a;
echo '<br/>';
}
?>
```
Break語句
```
<meta http-equiv="content-type" content="text/html;charset=utf-8"/>
<?php
for($a = 0; $a < 10; $a++)
{
echo $a;
echo '<br/>';
if($a ==5)
{
break;//終止循環,但執行循環后面的語句
}
}
echo '循環結束';
?>
```
Exit語句
```
<?php
for($a = 0; $a < 10; $a++)
{
echo $a;
echo '<br/>';
if($a ==5)
{
exit;//直接退出,循環后面的語句不執行
}
}
echo '循環結束';
?>
```
Continue語句
```
<?php
for($a = 0; $a < 10; $a++)
{
echo $a;
echo '<br/>';
if($a ==5)
{
continue;//結束本次循環,繼續下次循環,循環后面的語句依然執行
}
}
echo '循環結束';
?>
```
- 介紹
- HTML/CSS 教程
- 第 1 章 HTML5 概述
- 第 2 章 基本格式
- 第 3 章 文本元素
- 第 4 章 超鏈接和路徑
- 第 5 章 分組元素
- 第 6 章 表格元素
- 第 7 章 文檔元素
- 第 8 章 嵌入元素
- 第 9 章 音頻和視頻
- 第 10 章 表單元素[上]
- 第 10 章 表單元素[中]
- 第 10 章 表單元素[下]
- 第 11 章 全局屬性和其他
- 第 12 章 CSS 入門
- 第 13 章 CSS 選擇器[上]
- 第 14 章 CSS 顏色與度量單位
- 第 15 章 CSS 文本樣式[上]
- 第 15 章 CSS 文本樣式[下]
- 第 16 章 CSS 盒模型[上]
- 第 16 章 CSS 盒模型[下]
- 第 17 章 CSS 邊框與背景[上]
- 第 17 章 CSS 邊框與背景[下]
- 第 18 章 CSS 表格與列表
- 第 19 章 CSS 其他樣式
- 第 20 章 CSS3 前綴和 rem
- 第 21 章 CSS3 文本效果
- 第 21 章 CSS3 文本效果
- 第 23 章 CSS3 邊框圖片效果
- 第 24 章 CSS3 變形效果[下]
- 第 25 章 CSS3 過渡效果
- 第 26 章 CSS3 動畫效果
- 第 27 章 CSS 傳統布局[上]
- 第 27 章 CSS 傳統布局[下]
- 第 28 章 CSS3 多列布局
- 第 29 章 CSS3 彈性伸縮布局[上]
- 第 29 章 CSS3 彈性伸縮布局[中]
- 第 29 章 CSS3 彈性伸縮布局[下]
- 第 30 章 使用 Emmet 插件
- Bootstrap 教程
- 第 1 章 Bootstrap 介紹
- 第 2 章 排版樣式
- 第 3 章 表格和按鈕
- 第 4 章 表單和圖片
- 第 5 章 柵格系統
- 第 6 章 輔組類和響應式工具
- 第 7 章 圖標菜單按鈕組件
- 第 8 章 輸入框和導航組件
- 第 9 章 路徑分頁標簽和徽章組件
- 第 10 章 巨幕頁頭縮略圖和警告框組件
- 第 11 章 進度條媒體對象和 Well 組件
- 第 12 章 列表組面板和嵌入組件
- 第 13 章 模態框插件
- 第 14 章 下拉菜單和滾動監聽插件
- 第 15 章 標簽頁和工具提示插件
- 第 16 章 彈出框和警告框插件
- 第 17 章 按鈕和折疊插件
- 第 18 章 輪播插件
- 第 19 章 附加導航插件
- 第 20 章 項目實戰--響應式導航[1]
- 第 20 章 項目實戰--響應式輪播圖[2]
- 第 20 章 項目實戰--首頁內容介紹[上][3]
- 第 20 章 項目實戰--首頁內容介紹[下][4]
- 第 20 章 項目實戰--資訊內容[5,6]
- 第 20 章 項目實戰--案例和關于[7]
- javaScript 教程
- javascript快速入門1--JavaScript前世今生,HelloWorld與開發環境
- javascript快速入門2--變量,小學生數學與簡單的交互
- javascript快速入門3--分支判斷與循環
- javascript快速入門4--函數與內置對象
- javascript快速入門5--數組與對象
- javascript快速入門6--Script標簽與訪問HTML頁面
- javascript快速入門7--ECMAScript語法基礎
- javascript快速入門8--值,類型與類型轉換
- javascript快速入門9--引用類型
- javascript快速入門10--運算符,語句
- javascript快速入門11--正則表達式
- javascript快速入門12--函數式與面向對象
- javascript快速入門13--BOM——瀏覽器對象模型(Browser Object Model)
- javascript快速入門14--DOM基礎
- javascript快速入門15--節點
- javascript快速入門15--表單
- javascript快速入門16--表格
- javascript快速入門17--事件
- javascript快速入門18--樣式
- javascript快速入門19--定位
- javascript快速入門20--Cookie
- javascript快速入門21--DOM總結
- javascript快速入門22--Ajax簡介
- javascript快速入門23--XHR—XMLHttpRequest對象
- javascript快速入門24--XML基礎
- javascript快速入門25--瀏覽器中的XML
- javascript快速入門26--XPath
- javascript快速入門27--XSLT基礎
- PHP 教程
- 第一章 如何加載運行已發布的PHP項目
- 第二章 PHP基礎
- 第三章 操作符與控制結構
- 第四章 數學運算
- 第五章 數組
- 第六章 目錄與文件
- 第七章 自定義函數
- 第八章 字符串處理
- 第九章 正則表達式
- 第十章 日期與時間
- 第十一章 表單與驗證
- 第十二章 會話控制
- 第十三章 上傳文件
- 第十四章 處理圖像
- 第十五章 MySQL 數據庫
- 第十六章 PHP 操作MySQL
- 第十七章 面向對象基礎
- 第十八章 面向對象的特性
- 第十九章 面向對象的工具