操作符&流程控制
运算符:算术运算符 赋值运算符 字符串运算符 递增(++)和递减(--)运算符 逻辑运算符 比较运算符 三元运算符
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中,函数只是另一种数据类型的变量,可以被分配,操作,甚至把函数作为参数传递给其他函数.分支控制和循环控制,和通用编程语言的风格很相似, ...
随机推荐
- angularjs+requlirejs 搭建前端框架(1)
第一部分:发发牢骚吧 随着富前端时代的逐渐深入,越来越多的前端技术框架层出不穷,可以说是百花齐放.让我们这些爱好前端的人疲于奔命,今天学习这个框架,明天研究那个框架,哎,说不出的蛋疼...感觉好累.. ...
- C#实现远程开机(局域网测试通过)
首先介绍相关知识. UDP协议 UDP 是User Datagram Protocol的简称, 中文名是用户数据报协议,是OSI(Open System Interconnection,开放式系统互联 ...
- Binder学习笔记(二)——defaultServiceManager()返回了什么?
不管是客户端还是服务端,头部都要先调用 sp < IServiceManager > sm = defaultServiceManager(); defaultServiceManager ...
- Block 代码块
前言 iOS4.0开始,Block横空出世,自他出生开始,就深受Apple和开发者的喜爱.他其实就是c预言的补充,书面点说就是带有自动变量的匿名函数. 其实很多初级开发者也很喜欢使用Block,第一呢 ...
- UI界面相关
在开发中有些控件或者控件显示的属性需要经常设置,但是又是万变不离其中,经常写着一样的代码会显得冗余,不利于阅读.这里做了简化. 1.UI控件 2.颜色管理 3.图片管理 4.字体选择
- A Plug for UNIX UVA - 753(网络流)
题意:n个插座,m个设备及其插头类型,k种转换器,没有转换器的情况下插头只能插到类型名称相同的插座中,问最少剩几个不匹配的设备 lrj紫书里面讲得挺好的. 先跑一遍floyd,看看插头类型a能否转换为 ...
- E - 稳定排序(结构体)
大家都知道,快速排序是不稳定的排序方法. 如果对于数组中出现的任意a[i],a[j](i<j),其中a[i]==a[j],在进行排序以后a[i]一定出现在a[j]之前,则认为该排序是稳定的. 某 ...
- 深入浅出git
图文 http://www.cnblogs.com/syp172654682/p/7689328.html 廖雪峰 https://www.liaoxuefeng.com/wiki/001373951 ...
- 小程序scroll-view采坑
scroll-view分为水平滚动和垂直滚动.注意滚动视图垂直滚动时一定要设置高度否则的话scroll-view不会生效.
- linux下mysql的安装部署
---恢复内容开始--- 注意这一切都是root用户下进行的 su root * 一.查看之前是否安装过:yum list installed mysql* 二.查看是否有安装包:yum list ...