运算符

表达式,由操作数和操作符组成,并返回一个确切值的程序短域

  • % 取模,也叫取余,余数一定是整数
    printf('10 / 4的余数是:%d <br>', (10 % 4));
    1. $year = date('Y');
    2. echo $year.'<br>';
    3. if ($year % 4 === 0 && $year % 100 !== 0) {
    4. printf('%d年是闰年<br>', $year);
    5. } else {
    6. printf('%d年不是闰年<br>', $year);
    7. }
  • 自增
    • ++$n 先加后用
      $n = 20;printf('++$n=%d,$n=%d<br>', ++$n, $n);
    • $n++ 先用后加
      $n = 10;printf('$n++=%d,$n=%d<br>', $n++, $n);
  • 自减
    • —$n 先减后用
      $n = 20;printf('--$n=%d,$n=%d<br>', --$n, $n);
    • $n— 先用后减
      $n = 10;printf('$n--=%d,$n=%d<br>', $n--, $n);
  • 赋值运算
    1. $a = 1;
    2. $b = 2;
    3. //$a = $a + $b;
    4. $a += $b;
    5. echo $a . '<br>';
  • .=:字符串拼接
    1. $str = 'php';
    2. $str .= '是世界上最好的语言';
    3. echo $str . '<br>';
  • 比较运算,返回的是bool类型
    var_dump(2 > 1);
    • == 只要求值相等就是true,如果两边类型不同则自动转换
      1. var_export(1 == '1');
      2. echo '<br>';
      3. var_export(1 == (int)'1');
      4. echo '<br>';
      5. var_export((string)1 == '1');
    • ===:要求值与类型全相等才返回true
      1. var_export(1 === 1);
      2. echo '<br>';
      3. var_export(1 === '1');
      4. echo '<br>';
      5. var_export(1 === (int)'1');
      6. echo '<br>';
    • php7+ 太空船$a <=> $b
      当$a小于、等于、大于 $b时 分别返回-1、0、1
      1. $num1 = 1;
      2. $num2 = 5;
      3. echo $num1 <=> $num2;
  • 逻辑运算符
    • && 与 要求两边都是true才为true 交作短路求值
      1. var_dump(false && true);
      2. var_dump(false && false);
      3. var_dump(true && true);
    • || 或 有一个为true 则为true
      1. var_dump(true || false);
      2. var_dump(false || true);
      3. var_dump(false || false);
    • ! 取反
      var_dump(!false, !true);
  • 三元运算符与null合并运算符
    • 三元运算
      $age = 1;echo $age >= 18 ? '允许' : '不允许';
    • null合并运算符
      $page = $_GET['p'] ?? 1;echo 'p' . $page;

流程控制:分支

  • 单分支

    1. $age = 18;
    2. if ($age >= 18) {
    3. echo '成人';
    4. }
    5. //替代语法:省略大括号
    6. if ($age >= 18) :
    7. echo '成人';
    8. endif;
    9. if ($age >= 18) {
    10. echo '成人','<br>';
    11. } else {
    12. echo '未成年','<br>';
    13. }
    14. if ($age >= 18) :
    15. echo '成人','<br>';
    16. else :
    17. echo '未成年','<br>';
    18. endif;
    19. //简化 三元
    20. echo $age >= 18 ? '成人' : '未成年';

  • 多分支

    1. $age = 22;
    2. if ($age >= 40 && $age < 65) {
    3. echo '中年人';
    4. } elseif ($age < 40 && $age >= 18) {
    5. echo '青年人';
    6. } else {
    7. echo '未成年';
    8. }
    9. //替代语法
    10. if ($age >= 40 && $age < 65) :
    11. echo '中年人';
    12. elseif ($age < 40 && $age >= 18) :
    13. echo '青年人';
    14. else :
    15. echo '未成年';
    16. endif;

  • switch 多分支的简化
    switch 多用作单值判断
    1. $age = 55;
    2. switch ($age) {
    3. case $age >= 40 && $age < 65:
    4. echo '中年人','<br>';
    5. break;
    6. case $age < 40 && $age >= 18:
    7. echo '青年人','<br>';
    8. break;
    9. default:
    10. echo '未成年','<br>';
    11. }
    12. //替代语法
    13. switch ($age):
    14. case $age >= 40 && $age < 65:
    15. echo '中年人','<br>';
    16. break;
    17. case $age < 40 && $age >= 18:
    18. echo '青年人','<br>';
    19. break;
    20. default:
    21. echo '未成年','<br>';
    22. endswitch;

循环结构

三要素:循环条件的初始值,循环条件,更新循环条件

  • 1、入口型 while(){…}
    1. $arr=['a','b','c','d'];
    2. $i=0;
    3. while($i<count($arr)){
    4. echo $arr[$i].'<br>';
    5. $i++;
    6. };
  • 2、出口型 do{}while(),当前条件为false时,至少执行一次循环体
    1. $i=0;
    2. do{
    3. echo $arr[$i].'<br>';
    4. $i++;
    5. }while($i<count($arr));
  • 计算式 for()可以视为while的简化

    1. for($i=0;$i<count($arr);$i++){
    2. echo $arr[$i].'<br>';
    3. }
    • 提前终止循环,进入到下一轮
      1. for($i=0;$i<count($arr);$i++){
      2. if($i===2) continue;
      3. if($i>2) break;
      4. echo $arr[$i].'<br>';
      5. }
    • 遍历数组 foreach (数组 as 别名)
      1. foreach($arr as $i=>$item){
      2. echo $arr[$i].'<br>';
      3. }

    文件包含:模块化编程

    文件包含的本质是引入一个html代码。所以引入的php文件必须写<?php ?>标签

    • include :将一个外部的文档插入到当前的代码块中
      被插入的脚本,可以访问当前作用域中的所有成员
      include是在运行阶段包含,可以使用if中;
      if(true){include 'file.php';}
    • require
      require 'file1.php';echo '继续'; include 'file1.php';exit;echo '继续';
      总结:require代码出错时终止执行,推荐使用require引入文件

更多相关文章

  1. 我的第十个代码
  2. 数值运算常用途径;字符串拼接注意事项;流程控制语句与导入外部文件
  3. PHP后端语言与前端JS语法的区别详解

随机推荐

  1. golang怎么给slice赋长度
  2. Go语言异常处理的方法介绍
  3. golang怎么拼接字符串数组
  4. golang使用protobuf的方法详解
  5. golang怎么定时任务
  6. golang如何写http请求
  7. go语言结构体组合函数介绍
  8. golang错误抛出的方法
  9. golang测试是否能ping通
  10. golang怎样读取json数据