一. 运算符
 1.按功能分
  (1)算术运算符
  (2)字符运算符
  (3)赋值运算符
  (4)比较运算符
  (5)逻辑运算符
  (6)错误抑制符
  (7)执行运算符
 2.逻辑运算符 : ! &&(and) ||(or) xor
   (1)&&(and):与,并且,第一个表达式和 第二个表达式都为真才为真否则为假
   (2)||(or):或,或者, 第一个表达式和第二个表达式都为假才为假否则为真   
   (3) ! 非  
   (4) xor :异或  第一个表达式和 第二个表达式的布尔结果不同为真,相同为假
   (5)短路:
       a.原理:如果第一个表达式的结果就能确定整个表达式的结果,那第二个表达式不执行产生短路
       b. &&(and)短路:第一个表达式为假,那第二个表达式不执行,产生短路 
       c. ||(or)短路:第一个表达式为真,那第二个表达式不执行,产生短路

说明:逻辑运算符运算结果布尔类型

3.错误抑制符 : @忽略错误,没错误不忽略
      说明:一般用在函数或表达式前面
 4. 执行运算符: 反引号 ``
       说明:
      a.PHP的命令行
      b.php.ini 中 safe_mode=Off关闭
 5.按参加的操作数的个数分
   (1)单目(一元 ):1个操作数
       ++ -- ! @等
   (2)双目(二元 ):2个操作数
       + - * /  等
   (3)三目(三元 ):3个操作数
       说明:
      a. expr1?expr2:expr3;
                 当expr1为真执行expr2,
                 如果为假执行expr3
      b. PHP5.3以上支持
       expr1?expr1:expr3; 
  6. 运算符的优先级
    (1)单目运算符和赋值运算符是右结合(从右往左)
              其他都是左结合(从左往右运算)
    (2)优先级高的先运行,优先级底的后运行,同级
               左结合或右结合
    (3)用()改变优先级的顺序
    (4)有短路先考虑短路
    (5)运算符的优先级表
              单目运算符    双目运算符(算术 比较 逻辑)
              三目运算符   赋值运算符   and  xor or 
二.流程控制语句
  1.作用:程序都是自上而下逐行执行,如果想通过某条件
             执行某个语句或重复执行某个语句,那就要用到
             流程控制语句 
  2.分类
   (1)条件分支语句
   (2)循环语句  
  3.条件分支语句
    (1)if单分支语句
      if(expr){
        echo 'expr条件为真执行的语句组';
      }
            说明:
       a. 如果expr条件为真执行if后面的大括号中 语句,如果expr条件为假不执行if后面的大括号,执行顺序语句
       b.如果if后面的大括号中语句组只有一条语句大花括号可以省略,不推荐省略
    (2)if双分支语句
       if(expr){
         echo '如果expr条件为真执行的语句组';
       }else{
         echo '如果expr条件为假执行的语句组';
       }
              说明:如果expr条件为真执行if后面的大括号的语句组 否则执行else后面的大括号的语句组,二选一
    (3)if多分支语句:
       if(expr1){
          ....
       }elseif(expr2){
          ...
       }......
       elseif(expr3){
          ...
       }
       [else{
         ....
       }]
              说明:根据不同条件执行对应的语句组,如果某个条件为真就执行对应的语句组然后跳出多分支语句;如果所有条件都为假 并且else存在那执行else对应的语句组然后跳出多分支语句。多选一          
    (4)if嵌套:
      if(expr){
         if(expr2){
           ...
         }else{
           ...
         } 
      }else{
         ...
      }
      if(expr){
         
      }else{
        if(expr2){
          ...
        }else{
           ...
        } 
      }
    (5)switch语句:
     switch(变量名称){
       case 值:
         ...
         break;
       case 值:
         ...
         break;
       ......
       [default:
         ...
         break;]
     }
         说明:
       a.判断变量等于某个特性的值
       b.switch/case 松散比较 
         case 等同于 ==  
       c.switch不能跳出分支语句
                   用break或continue 结束

分支语句

【day04】PHP的更多相关文章

  1. 函数和常用模块【day04】:内置函数(十)

    一.36-40 36.isinstance(object, classinfo) 功能:用于判断,对象是否是某个类的实例 # s = "alex" # 对象,"alex& ...

  2. 函数和常用模块【day04】:内置函数(九)

    一.11-20 11.ord(c) 功能:根据字符,找到对应的ascii值 1 2 >>> ord('a') 97 12.classmethod(function) 功能:类方法,这 ...

  3. 函数和常用模块【day04】:高阶函数(七)

    本节内容 1.介绍 2.具体实用 3.eval()函数 一.介绍 高阶函数:变量可以指向函数,函数的参数能接收变量,那么一个函数就可以接收另一个函数作为参数. 二.具体实用 其实说白了,高阶函数功能就 ...

  4. 函数和常用模块【day04】:函数式编程(六)

    本节内容 1.概述 2.介绍 3.定义 一.概述 每当提到函数式编程,很多人都以为就是我们经常写的函数.其实不然. 函数:是定义一段代码的执行过程 函数式编程:输入是确定的,输出也是确定的 二.介绍 ...

  5. 函数和常用模块【day04】:递归(五)

    本节内容 作用域.局部和全局变量 递归 函数式编程 高阶函数和eval()函数 一.概述 在函数内部,可以调用其他函数.但是一个函数在内部调用自身,这个函数被称为递归函数. 二.简单介绍 那递归具体是 ...

  6. 函数和常用模块【day04】:函数参数及调用(二)

    本节内容 1.为什么要有参数 2.返回值 3.有参数函数调用 一.为什么要有参数? 无参数实现 def CPU报警邮件() #发送邮件提醒 连接邮箱服务器 发送邮件 关闭连接 def 硬盘报警邮件() ...

  7. 函数和常用模块【day04】:函数介绍(一)

    本节内容 1.函数介绍 2.函数定义 3.为什么要使用函数 一.介绍 在我们以往的学习编程的过程当中,碰到的最多的两张编程方式或者说编程方法:面向过程和面向对象.其实不管是哪一种,其实都是编程的方法论 ...

  8. 函数和常用模块【day04】:内置函数(八)

    一.常用内置函数 1.表格 二.内置函数详情(1-10) 1.abs(x) 功能:取数的绝对值 1 2 >>> abs(-1)  #取-1的绝对值 1 2.all(iterable) ...

  9. 函数和常用模块【day04】:作用域、局部和全局变量(四)

    本节内容 概述 课前前引 局部变量和全局变量 总结 一.概述 我们之前写代码,都需要声明变量,但是我们思考过变量的作用范围吗?今天我们就来讲讲变量的作用范围,这个作用范围又叫作用域.首先我们根据变量的 ...

  10. 函数和常用模块【day04】:函数的非固定参数(三)

    本节内容 1.概述 2.默认参数 3.参数组 4.总结 一.概述 在上一篇博客中我已经写了,位置参数和关键字参数,下面我们来谈谈默认参数和参数组 二.默认参数 默认参数指的是,我们在传参之前,先给参数 ...

随机推荐

  1. Kafka 入门1

    Kafka 简介 作为一个消息中间件,Kafka 以高扩展性.高吞吐量等特点,在互联网项目中被广泛采用. 不清楚 Kafka 的同学,可以先看看这篇文章: http://blog.csdn.net/s ...

  2. python创建文件时去掉非法字符

    1.函数作用 windows系统中文件名不能包含 \ / : * ? " < > |想要创建必须过滤掉这些字符 2.函数实现 import re def filename_fil ...

  3. HTML+CSS基础 块级元素div分析 文档流 脱离文档流的方法

    块级元素div分析 1.外边距  margin 2.内边距 padding 3.边框  border Div的真实宽度=width+margin-left+margin-right+border*2+ ...

  4. 【前端知识体系-JS相关】深入理解JavaScript原型(继承)和原型链

    1. Javascript继承 1.1 原型链继承 function Parent() { this.name = 'zhangsan'; this.children = ['A', 'B', 'C' ...

  5. centos 8 重启网络 systemctl restart network 失效的解决办法

    参考: https://www.tecmint.com/set-static-ip-address-in-rhel-8/ https://www.tecmint.com/configure-netwo ...

  6. 智能家居-3.基于esp8266的语音控制系统(软件篇)

    智能家居-1.基于esp8266的语音控制系统(开篇) 智能家居-2.基于esp8266的语音控制系统(硬件篇) 智能家居-3.基于esp8266的语音控制系统(软件篇) 赞赏支持 QQ:505645 ...

  7. Java网络编程 -- AIO异步网络编程

    AIO中的A即Asynchronous,AIO即异步IO.它是异步非阻塞的,客户端的I/O请求都是由OS先完成了再通知服务器应用去启动线程进行处理,一般我们的业务处理逻辑会变成一个回调函数,等待IO操 ...

  8. Django框架(十九)--Django rest_framework-认证组件

    一.什么是认证 只有认证通过的用户才能访问指定的url地址,比如:查询课程信息,需要登录之后才能查看,没有登录,就不能查看,这时候需要用到认证组件 二.利用token记录认证过的用户 1.什么是tok ...

  9. Django框架(十六)-- 中间件、CSRF跨站请求伪造

    一.什么是中间件 中间件是介于request与response处理之间的一道处理过程,相对比较轻量级,并且在全局上改变django的输入与输出 二.中间件的作用 如果你想修改请求,例如被传送到view ...

  10. python中杀死线程

    有时候有这样的需要,在某种情况下,需要在主线程中杀死之前创建的某个线程,可以使用下面的方法,通过调用python内置API,在线程中抛出异常,使线程退出. import threading impor ...