操作符&流程控制
运算符:算术运算符 赋值运算符 字符串运算符 递增(++)和递减(--)运算符 逻辑运算符 比较运算符 三元运算符
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中,函数只是另一种数据类型的变量,可以被分配,操作,甚至把函数作为参数传递给其他函数.分支控制和循环控制,和通用编程语言的风格很相似, ...
随机推荐
- C++: STL迭代器及迭代器失效问题
转载至:http://blog.csdn.net/wangshihui512/article/details/9791517 迭代器失效: 典型的迭代器失效. 首先对于vector而言,添加和删除操作 ...
- metasploit 读书笔记-EXPLOITATION
一、渗透攻击基础 1.常用命令 show exploits 显示Meta框架中所有可用的渗透攻击模块。 show options 显示模块所需要的各种参数 back 返回Meta的上一个状态 sear ...
- java的一些最最最最基本的东西,纯粹是为了保存
1.方法签名 指的是方法名和参数类型 2.java类初始化数据的方法 构造函数 声明变量时赋值 静态块 3.List转数组 List<String> list = new ArrayLis ...
- CS基本网络中Agent使用双网卡进行流量划分
两台服务器,一台服务器作为管理节点[单网卡],一台服务器作为计算节点[双网卡] ------------------------------------------------------------ ...
- 【TED演讲】阿帕玛・饶:(幽默的高科技艺术)
身为艺术家和TED Fellow的阿帕玛・饶对熟悉的事物以惊奇的幽默的方式进行再次想像.通过和索伦・普尔兹的合作,她创作出一系列高科技的艺术作品-一个会发邮件的打字机,一个让你在屏幕上消失而跟踪拍摄你 ...
- CI框架源码学习笔记2——Common.php
上一节我们最后说到了CodeIgniter.php,可是这一节的标题是Common.php,有的朋友可能会觉得很奇怪.事实上,CodeIgniter.php其实包含了ci框架启动的整个流程. 里面引入 ...
- C++ 标准库智能指针
整理一下c++中shared_ptr,weak_ptr,unique_ptr三种指针的使用案例和注意事项,让程序资源更加案例,在标准库中,需要包含<memory>,在boost库中, 一. ...
- 【Leetcode】Remove Duplicates from Sorted List II
Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct numb ...
- Vscode 隐藏 工作区中的目录
{ "files.exclude": { "**/.git": true, "**/.svn": true, "**/.hg&qu ...
- Luogu P2107 小Z的AK计划 堆贪心
好久不做这种题了... 存一下每个点的位置和时间,由于达到某个位置跟之前去哪里AK的无关,所以在时间超限后,可以用大根堆弹掉之前消耗时间最大的,来更新答案,相当于去掉之前花费最大的,直到时间不在超限. ...