PHP基础语法(下)

简介: 本篇博客将会带你继续探索PHP语言的基础语法。本篇内容主要聚焦于PHP的流程控制语句和文件包含语句,掌握这些重要的语法结构将使您能够更好地控制程序流程,并且在开发过程中能够高效地组织和管理代码。

前言

本篇博客将会带你继续探索PHP语言的基础语法。本篇内容主要聚焦于PHP的流程控制语句和文件包含语句,掌握这些重要的语法结构将使您能够更好地控制程序流程,并且在开发过程中能够高效地组织和管理代码。

这是本篇文章的脉络图:



一、流程控制语句

1.1 选择结构语句

概念:选择结构语句指的就需要对一些条件作出判断,从而决定执行指定的代码。

1.1.1 if单分支语句

概念:if条件判断语句也被称为单分支语句,当满足某种条件时,就进行某种处理。

举例:只有年龄大于等于18周岁,才输出已成年,否则无输出。

<?php
$age=1;
if($age >= 18){
echo'你已经成年!';
}
?>

image.gif

1.1.2 if…else语句

概念:if…else语句也称为双分支语句,当满足某种条件时,就进行某种处理,否则进行另一种处理。

举例:判断一个学生的年龄,大于等于18岁则是成年人,否则是未成年人。

题目:首先使用rand()函数生成一个1,50之间的数,然后条件判断这个数是不是偶数,如果是偶数,条件表达式为真,则输出“变量$num 是偶数”,相反,条件表达式为假,输出“变量$num 是奇数”

注:rand()函数的作用是取得一个随机的整数。

<?php
$num = rand(1, 50); // 生成1到50之间的随机数
if ($num % 2 == 0) { // 使用取模运算判断是否为偶数
    echo "变量$num 是偶数";
} else {
    echo "变量$num 是奇数";
}
?>

image.gif

三元运算符:又称为三目运算符,它也可以完成if…else语句的功能。

格式

$condition ? $value_if_true : $value_if_false;

image.gif

    • $condition 是一个需要求值的条件表达式。
    • 如果 $condition 为真,即满足条件,那么 $value_if_true 的值将被返回。
    • 如果 $condition 为假,即不满足条件,那么 $value_if_false 的值将被返回。

    例如:

    $score = 80;
    $result = $score >= 60 ? '及格' : '不及格';
    echo $result; // 输出:及格

    image.gif

    在上述例子中,我使用三元运算符判断变量 $score 是否大于等于 60。如果 $score 大于等于 60,即满足条件,那么返回值为 '及格'。否则,返回值为 '不及格'。最后,将返回值赋给 $result 并输出。

    1.1.3 if…elseif…else语句

    概念:if…elseif…else语句也称为多分支语句,用于针对不同情况进行不同的处理。

    举例:对一个学生的考试成绩进行等级的划分,若分数在90~100分为优秀,分数在80~90分为优秀为良好,分数在70~80分为中等,分数在60~70分为及格,分数小于60则为不及格。

    例如:

    <?php
    $cj=rand(1,100);
    if($cj>=90){
    echo "该同学成绩为$cj 等级:优秀";
    }elseif($cj>=80){
    echo "该同学成绩为$cj 等级:良好";
    }elseif($cj>=70){
    echo "该同学成绩为$cj 等级:中等";
    }elseif($cj>=60){
    echo "该同学成绩为$cj 等级:及格";
    }elseif($cj<60){
    echo "该同学成绩为$cj 等级:不及格";
    }
    ?>

    image.gif

    1.1.4 switch语句

    概念:switch语句也是多分支语句,功能与if系列条件语句相同,不同的是它只能针对某个表达式

    的值作出判断,从而决定执行哪一段代码。

    特点:代码更加清晰简洁、便于阅读。

    举例:根据学生成绩$score进行评比(满分为100分)。

    工作原理:首先对一个简单的表达式 n(通常是变量)进行一次计算。将表达式的值与结构中每个

    case 的值进行比较。如果存在匹配,则执行与 case 关联的代码。代码执行后,使用 break 来阻

    止代码跳入下一个 case 中继续执行。default 语句用于不存在匹配(即没有 case 为真)时执行。

    格式

    switch (表达式) {
    case 值1:代码段1; break;
    case 值2:代码段2; break;
    ... 
    default: 代码段n;
    }

    image.gif

    例如:

    <?php
    //switch语句
    //随机生成50-100的数
    $score=rand(50,100);
    switch((int)($score/10)){
    case 10: // 90~100为优
    case 9: echo '优'; break;
    case 8: echo '良'; break;
    default: echo '差'; 
    }
    ?>

    image.gif

    注意:表达式的值不能为数组或对象。

    1.2 循环结构语句

    概念:就是可以实现一段代码的重复执行。

    举例:计算给定区间内的偶数或奇数的和等。

    1.2.1 while循环语句

    概念:while循环语句,是根据循环条件来判断是否重复执行这一段代码的。

    例如:

    <?php
    $i=1;
    while($i<=5)
    {
    echo "The number is " . $i . "<br>";
    $i++;
    }
    ?>

    image.gif

    上面的实例首先设置变量 i 的值为 1 ($i=1;)。 然后,只要 i 小于或者等于 5while 循环将继续运行。循环每运行一次,i 就会递增 1

    1.2.2 do…while循环语句

    概念:do…while循环语句的功能与while循环语句类似

    唯一的区别在于,while是先判断条件后执行循环体,而do...while会无条件执行一次循环体后再判断条件。

    格式

    do {
    循环体
    ……
    } while (循环条件);

    image.gif

    例如(计算1+到100的值):

    <?php
    $i=1;
    $sum=0;
    do{
    $sum+=$i; //$sum=$sum+$i
    $i++; //$i=2
    }while($i <= 100);//只要 i 小于或者等于 100,while 循环将继续运行
    echo '1+2+3+4+...+99+100= '. $sum;
    ?>

    image.gif

    1.2.3 for循环语句

    概念:for循环语句是最常用的循环语句,它适合循环次数已知的情况。

    格式

    for (初始值; 条件; 增量)
    {
    要执行的代码;
    }

    image.gif

    for关键字后面小括号“()”中包括了三部分内容:

    ① 初始化表达式

    ② 循环条件

    ③ 操作表达式

    它们之间用“;”分隔,{}中的执行语句为循环体。

    题目:使用循环语句:

    计算100之内的奇数之和,

    计算100之内的偶数之和,

    计算1~100的和.

    0--100之间的奇数之和:

    $sum=0;
    for($i=0;$i<=100;$i++) {
    if($i%2==1){
    $sum+=$i;
    } }
    echo $sum;
    ?>

    image.gif

    0--100之间的偶数之和:

    $sum=0;
    for($i=0;$i<=100;$i+=2) {
    $sum+=$i;
    }
    echo $sum;

    image.gif

    计算1~100的和:

    $sum=0;
    for($i=1;$i<=100;$i++){
    $sum+=$i;//$sum=$sum+$i;
    }
    echo $sum;

    image.gif

    1.3 跳转语句

    概念:跳转语句用于实现程序执行过程中的流程跳转。

    1.3.1 break语句

    break语句可应用在switch和循环语句中,其作用是终止当前语句的执行,跳出switch选择结构或循环语句,执行后面的代码。

    1.3.2 continue语句

    continue语句与break语句的区别在于,前者用于结束本次循环的执行,开始下一轮循环的执行操作;后者用于终止当前循环,跳出循环体。

    1.4 流程替代语法

    流程替代语法是一种用于在HTML中嵌入PHP代码的技术,它提供了一种更清晰和易于维护的方式来混合编写大量的HTML和PHP代码。

    在传统的PHP语法中,我们使用尖括号标记 `<?php ... ?>` 来包裹PHP代码。但是在流程替代语法中,我们使用冒号 `:` 和关键字 `endxxx`(例如 `endfor` 等)来表达开始和结束流程语句的位置。

    下面是一个使用流程替代语法的例子:

    <div>
        <?php for ($i = 0; $i < 5; $i++): ?>
            <p><?php echo $i; ?></p>
        <?php endfor; ?>
    </div>

    image.gif

    在这个例子中,我使用 `for` 循环语句来打印数字 0 到 4。我使用了 `:` 来标记循环的开始位置,并使用 `endfor` 标记循环的结束位置。嵌套在循环内的 `<p>` 标签会输出每个数字。

    除了 `for`,PHP还提供了其他流程语句的替代语法,如 `if`、`while` 等,它们的使用方式类似。流程替代语法使得代码更加清晰,PHP代码和HTML代码更容易区分,并能够减少尖括号的使用。

    需要注意的是,流程替代语法只适用于在HTML中嵌入PHP代码,如果单独编写PHP文件,则不需要使用流程替代语法。

    二、文件包含语句

    作用:在程序开发中,会涉及到多个PHP文件。为此,PHP提供了包含语句,可以从另一个文件中将代码包含进来。

    好处:不仅可以提高代码的重用性,还可以提高代码的维护和更新的效率。

    PHP提供了两个主要的文件包含语句:`include` 和 `require`。

    2.1 include

    `include`:`include`语句用于在当前PHP文件中包含另一个文件的内容。如果被包含的文件不存在或出现错误,`include`语句会发出一个警告,并继续执行脚本。

    格式(以include语句为例,其它包含语句语法类似

    include '文件路径';

    image.gif

    例如:

    <?php
    include 'header.php';
    // 运行其他代码
    include 'footer.php';
    ?>

    image.gif

    在上述例子中,我在当前PHP文件中包含了 `header.php` 和 `footer.php` 文件的内容。

    注意

    1.“文件路径”指的是被包含文件所在的绝对路径或相对路径。

    2.所谓绝对路径就是从盘符开始的路径,如“C:/web/test.php”。

    3.所谓相对路径就是从当前路径开始的路径,假设被包含文件test.php与当前文件所在路径都是“C:/web”,则其相对路径就是“./test.php”。

    4.在相对路径中,“./”表示当前目录,“../”表示当前目录的上级目录。

    2.2 require

    `require`require语句与include语句的功能类似,用于将另一个文件的内容包含到当前PHP文件中。主要的区别是,如果被包含的文件不存在或出现错误,require语句会产生一个致命错误,并停止脚本的执行。

    例如:

    <?php
    require 'config.php';
    // 运行其他代码
    require 'functions.php';
    ?>

    image.gif

    在上述例子中,我使用 `require` 包含了 `config.php` 和 `functions.php` 文件的内容。

    此外,PHP还提供了相应的用于条件包含的语句,即 `include_once`、`require_once`。这些语句会在包含文件之前检查是否已经包含过该文件,如果已经包含,则不会再次包含。


    总结

    本篇博客介绍了PHP的流程控制语句和文件包含语句。流程控制语句如条件判断、循环和跳转语句,使我们能够根据不同的情况执行不同的代码逻辑,实现灵活的程序控制。通过深入学习这些语句的使用方法和应用场景,我们能够编写出更加强大、高效的程序。

    另外,文件包含语句在PHP开发中起着重要的作用。通过使用include和require语句,我们可以将代码块单独存放在一个文件中,方便代码的复用和管理。这种模块化的开发方式能够提高代码的可维护性和扩展性,同时也使代码更加清晰易懂。

    感谢您阅读本篇博客,希望这些内容对您有所帮助。如果您对这些内容有任何问题或者想进一步探讨,欢迎在评论区留言。祝您编程愉快!

    目录
    相关文章
    |
    3月前
    |
    存储 Java 数据库连接
    php学习笔记-代码基本语法-day01
    本文是关于PHP编程语言的基础语法学习笔记,内容包括PHP的介绍、注释风格、数据类型、命名规范、常量和变量的使用,以及变量和常量相关的常用函数。文中详细解释了PHP的基本语法元素和一些易混淆的概念,如传值赋值与传址赋值、可变变量,以及如何检查变量是否已定义或为空。
    php学习笔记-代码基本语法-day01
    |
    3月前
    |
    XML 开发框架 .NET
    PHP的基本语法是什么样的?
    PHP提供了丰富的变量类型,包括整型、浮点数、布尔值、空值(NULL)、字符串和数组等。了解每种类型的特性和用途对于编写高质量的PHP代码至关重要。
    32 4
    |
    4月前
    |
    前端开发 PHP Apache
    PHP基础语法
    PHP基础语法
    35 1
    |
    6月前
    |
    关系型数据库 MySQL 数据库连接
    蓝易云 - PHP基本语法解析与应用指南
    以上只是PHP基本语法的简要概述,要深入了解和掌握PHP,你需要阅读更多的教程和参考资料,并通过实践来提高你的技能。
    47 2
    |
    6月前
    |
    存储 JavaScript PHP
    PHP基础语法讲解
    PHP基础语法讲解
    |
    6月前
    |
    存储 程序员 数据库连接
    |
    6月前
    |
    PHP
    php的基础语法讲解
    php的基础语法讲解
    |
    7月前
    |
    存储 关系型数据库 MySQL
    PHP的基本语法和结构
    【5月更文挑战第22天】PHP的基本语法和结构
    46 2
    |
    7月前
    |
    存储 PHP 容器
    【PHP 开发专栏】PHP 基础语法与变量详解
    【4月更文挑战第30天】本文概述了PHP的基础,包括脚本结构(&lt;?php至?&gt;标签)、注释(单行和多行)、数据类型(整型、浮点型、字符串型、布尔型、数组、对象)、运算符(算术、比较、逻辑)和流程控制(条件、循环语句)。还讨论了PHP变量的定义、作用域、类型转换及引用传递。了解这些基础知识对PHP编程至关重要,实践中不断学习和探索能提升Web开发技能。
    62 2
    |
    7月前
    |
    开发框架 .NET PHP
    【PHP入门】1.1-PHP初步语法
    【PHP入门】1.1-PHP初步语法