操作符&流程控制
运算符:算术运算符 赋值运算符 字符串运算符 递增(++)和递减(--)运算符 逻辑运算符 比较运算符 三元运算符
1.算术运算符 算术运算符,用于完成各种算术运算; + 加法运算 $a + $b - 减法运算 $a - $b * 乘法运算 $a * $b / 除法运算 $a / $b % 取模运算(求余数) $a % $b 2.赋值运算符 赋值运算符,将一个数据值赋给一个变量; 组合赋值运算符,在赋值之前会完成某个运算; $a = 5 赋值 $a += 5 加法赋值 $a = $a + 5 $a -= 5 减法赋值 $a = $a – 5 $a *= 5 乘法赋值 $a = $a * 5 $a /= 5 除法赋值 $a = $a / 5 $a .= 5 拼接赋值 $a = $a.5 3.字符串运算符 字符串运算符用于拼接字符串, 拼接表示将两个或多个对象组合起来; $a = "hello"; $b = $a . "world"; echo $b; $b = "Hello"; $b .= "World!"; echo $b; 4.递增(++)和递减(--)运算符 递增和递减运算符将变量的当前值加1或减1,可以使代码更简洁; ++$i 先加 $i的值加1,然后再返回$i的值; $i++ 后加 先返回$i的值,然后再将$i的值加1; --$i 先减 $i的值减1,然后再返回$i的值; $i-- 后减 先返回$i的值,然后再将$i的值减1; $i = 5; $a = $i++; echo 'i = '.$i; echo '<br>'; echo 'a = '.$a; 5.逻辑运算符 利用逻辑运算符可以根据多个变量的值进行判断,这使得控制程序的流程成为可能,逻辑操作符常用于控制结构中,如if条件和while及for循环; &&,AND 逻辑与 ||,OR 逻辑或 !, NOT 逻辑非 6.比较运算符 比较运算符,返回一个布尔值 TRUE 或 FALSE; > 大于 < 小于 >= 大于或等于 <= 小于或等于 != 不等于 <> 不等于 == 等于 === 全等于 (两个比较的内容里,类型也要一样) !== 全不等 7.三元运算符 语法:expression1 ? expression2 : expression3 $a = 5; $b = 2; $res = $a > $b ? "yes":"no"; echo $res; 8. 运算符的优先级 所谓运算符的优先级指的是哪一个运算符应该先计算。具体运算符的优先级,参考php手册; 赋值运算,从右到左 echo 1 + 2 * 3; //outputs 7 练习 1.请说出php中有哪几类运算符? 2.执行下列语句后,y的值为? $x = 1; ++$x; $y = $x++; A. 1 B. 2 C. 3 D. 0 3.写出下列语句的执行结果 $a = 3; $b = 5; $c = $a > $b ? 2 : 4; $d = $a < $c; echo $d;流程控制 (判断语句 循环语句 break语句 continue语句) 一.判断语句 1. If 语句 $a = 10; $b = 10; if($a > $b){ echo "a 大于 b"; }else if($a == $b){ echo "a 等于 b"; }else { echo "a 小于 b"; } If语句用括号中的表达式返回值(true 或 false )来控制是否执行指定的代码程序; 表达式为数字0、空、未定义的字符串,内置常量false都会返回false; 2. Switch 语句 switch 语句可以看作是if-else组合的一种变体,如果需要比较有限值的变量,通常会使用switch语句; $today = getdate(); switch($today['wday']){ case 1: echo "星期一"; break; case 2: echo "星期二"; break; default: echo "星期日"; } 在每个case块的末尾处都有break语句,如果没有break语句,就会执行所有后续的case块直到遇到break语句为止; 二、循环语句 1.While 语法格式: while(expression){ //statements } $count = 1; While ($count < 5) { echo "$count 平方 = ".pow($count, 2)."<br>"; $count++; } 2. do…while循环是while的一种变体,它在代码块的结束处验证循环条件; 语法格式: do { //statements }while(expression); $count = 11; do { echo "$count squared = ". pow($count, 2). "<br>"; $count++; }while($count < 10); 3. for 语法格式: for(expression1; expression2; expression3){ //statements } 第一个表达式expression1在第一次循环时计算; 第二个表达式expression2在每次循环时进行计算,这个表达式确定循环是否继续执行; 第三个表达式exprression3在每次循环结束时计算; for($i = 1; $i <= 5; $i++){ echo "$i squared = ".pow($count, 2)."<br>"; } 4. foreach循环用来遍历数组,每次循环都将指针后移一位; 语法格式1: foreach(array_expr as $value){ //statements } 语法格式2: foreach(array_expr as $key=>$value){ //statements } 5. break 如果包含一个break语句,将立即结束 while、do…while、for、foreach、switch的执行。 for($i=0;$i < 5;$i++){ if($i == 3){ break; } echo $i."<br>"; } 6.continue continue语句使当前循环执行结束,并从下一次循环开始执行; for($i=0;$i < 5;$i++){ if($i == 3){ continue; } echo $i."<br>"; }操作符&流程控制的更多相关文章
- 第三节:带你详解Java的操作符,控制流程以及数组
前言 大家好,给大家带来带你详解Java的操作符,控制流程以及数组的概述,希望你们喜欢 操作符 算数操作符 一般的 +,-,*,/,还有两个自增 自减 ,以及一个取模 % 操作符. 这里的操作算法,一 ...
- python操作符与流程控制
操作符: 算术运算: + - * / % // ** 逻辑运算:and or not 身份运算: is not is 不可变数据类型:数字 字符串 字典key 可变数据 ...
- JavaScript基本知识----操作符,流程控制,循环,字符串方法,数组方式,补充方法
操作符 算术运算 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...
- JS 操作符、控制流程、循环、字符串/数组方法
操作符 算术运算符:+ .- . * . / . %.++.-- 赋值运算符:= .+=.-=. *=./=.%= 比较运算符:>.>=.<.<=.!=.==.===(全等,数 ...
- shell-bash学习04读取输入、分隔符、流程控制
读入输出 输入通常是通过stdin或参数传递给命令; 输出出现在stderr或stdout; 管道,过滤器,管道操作符: cmd1 | cmd2 | cmd3; //最后还有输出 ls | cat - ...
- core java 1~4(HelloWorld & 标识符|关键字|数据类型 & 表达式|流程控制 & 数组)
MODULE 1 Java的编译和运行----------------------------编译:javac -d bin src\HelloWorld.java -d:指定编译后的class 文件 ...
- Python学习(七) 流程控制if语句
在Python中流程控制if语句采用如下格式: if expression : statement elif expression : statement elif expression : stat ...
- 流程控制 - PHP手册笔记
脚本由语句构成,语句靠流程控制实现功能,这一节主要介绍了几个关键字的使用. elseif elseif和else if的行为完全一样,如果用冒号来定义if/elseif条件,那就不能用两个单词的els ...
- R语言学习 第四篇:函数和流程控制
变量用于临时存储数据,而函数用于操作数据,实现代码的重复使用.在R中,函数只是另一种数据类型的变量,可以被分配,操作,甚至把函数作为参数传递给其他函数.分支控制和循环控制,和通用编程语言的风格很相似, ...
随机推荐
- MVC身份验证.MVC过滤器.MVC6关键字Task,Async.前端模拟表单验证,提交.自定义匿名集合.Edge导出到Excel.BootstrapTree树状菜单的全选和反选.bootstrap可搜索可多选可全选下拉框
1.MVC身份验证. 有两种方式.一个是传统的所有控制器继承自定义Control,然后再里面用MVC的过滤器拦截.所以每次网站的后台被访问时.就会先走入拦截器.进行前端和后端的验证 一个是利用(MVC ...
- ueditor UEditor的setContent的时候报错
今天在使用UEditor的setContent的时候报错,报错代码如下 TypeError: me.body is undefined 或 Uncaught TypeError: Cannot set ...
- [WIP]React 核心概念
创建: 2019/05/01 Hello World ReactDOM.render( <p>sample</p>, document.getElementById('ro ...
- LAMP实战之构建博客网站
1.首先检查LAMP环境 [root@cairui htdocs]# ps -ef | grep httpd php Mar03 ? :: /opt/apache2.2.34/bin/httpd -k ...
- P1742 最小圆覆盖
\(\color{#0066ff}{题目描述}\) 给出N个点,让你画一个最小的包含所有点的圆. \(\color{#0066ff}{输入格式}\) 先给出点的个数N,2<=N<=1000 ...
- jdk 1.6.0_39 下载
Java SE Development Kit 6u39 Product / File Description File Size Download password Linux x86 65.42 ...
- socket 连接关闭的TIME_WAIT状态的理由
MSL就是maximum segment lifetime(最大分节生命期),这是一个IP数据包能在互联网上生存的最长时间,超过这个时间将在网络中消失 TIME_WAIT两点原因: 1.TCP分节可能 ...
- linux线程池
typedef struct task_node { void *arg; /* fun arg. */ void *(*fun) (void *); /* the real work of the ...
- 数据结构28:广义表及M元多项式
广义表,又称为列表.记作: LS = (a1,a2,…,an) ;( LS 为广义表的名称, an 表示广义表中的数据). 广义表可以看作是线性表的推广.两者区别是:线性表中的数据元素只能表示单个数据 ...
- atcoder 2643 切比雪夫最小生成树
There are N towns on a plane. The i-th town is located at the coordinates (xi,yi). There may be more ...