操作符&流程控制
运算符:算术运算符 赋值运算符 字符串运算符 递增(++)和递减(--)运算符 逻辑运算符 比较运算符 三元运算符
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中,函数只是另一种数据类型的变量,可以被分配,操作,甚至把函数作为参数传递给其他函数.分支控制和循环控制,和通用编程语言的风格很相似, ...
随机推荐
- WCF寄宿控制台.WindowsService.WinFrom.WebAPI寄宿控制台和windows服务
先建立wcf类库.会默认生成一些试用代码.如下: public class Service1 { public string GetData(int value) { return string.Fo ...
- bat 操作数据库(附加,分离,删除,还原)
BAT代码: @echo off Title DataBase Color 0A :caozuo echo. echo ═══════════════════════════════════════ ...
- 云端搭建Linux学习环境 链接https://edu.aliyun.com/article/19 (阿里云ECS服务器 )课堂
云端搭建Linux学习环境 链接https://edu.aliyun.com/article/19 1. 开通云服务器 2 1.包年包月 按量付费(适合测试数据的时候) 2 2.地域 服务器数 ...
- 状压DP 【洛谷P3694】 邦邦的大合唱站队
[洛谷P3694] 邦邦的大合唱站队 题目背景 BanG Dream!里的所有偶像乐队要一起大合唱,不过在排队上出了一些问题. 题目描述 N个偶像排成一列,他们来自M个不同的乐队.每个团队至少有一个偶 ...
- javascript拖拽事件
<!DOCTYPE html> <html> <head> <title></title> <style type="tex ...
- 在SQLSERVER中创建聚集索引
CREATE CLUSTERED INDEX CLUSTER_id ON TABLE_name(ID)------批量
- Oracle 11G R2在用EXP 导出时,空表不能导出解决办法
11G中有个新特性,当表无数据时,不分配segment,以节省空间 解决方法: 1.insert一行,再rollback就产生segment了. 该方法是在在空表中插入数据,再删除,则产生segmen ...
- Js 处理 错误图片...(不用jquery)
document.addEventListener("error", function (e) { var elem = e.target; if (elem.tagName.to ...
- java 简单封装resultMap返回对象为map
public class DbUtils { private static String host = "47.93.******"; private static String ...
- System.Collections.Generic.List<T> 与 System.Collections.ArrayList
[推荐] System.Collections.Generic.List<T> [原因] 泛型集合类List<T>在操作值类型的集合时可以不进行 装箱/拆箱 处理. 使得性能较 ...