PHP8的程序结构-PHP8知识详解

在做任何事情之前,都需要遵循一定的规则。在PHP8中,程序能够安照人们的意愿执行程序,主要依靠程序的流程控制语句。

不管多复杂的程序,都是由这些基本的语句组成的。语句是构造程序的基本单位。程序执行的过程就是执行程序语句的过程。

PHP8的程序结构

程序语句执行的次序称为流程控制。流程控制的结构有顺序结构、选择结构和循环结构。我们这里制作了一个三大程序结构的执行流程图。流程

Image

1、顺序结构

顺序结构是PHP8的基本结构,也是最简单的结构,它按照语句出现的先后顺序依次执行。如:

<?php
$a = "我们正在学习的是";
$b = "PHP8编程语言";
echo $a;
echo $b;
?>

执行结果如下:

我们正在学习的是PHP8编程语言

2、选择结构(分支结构、条件结构)

选择结构又称分支结构、条件结构,它是依据明确的条件选择执行顺序,而不是严格按照顺序执行,在编程实际运用中要根据程序流程选择适合的分支语句,它是依照条件的结果改变执行的程序。

<?php
$t=date("H");
if ($t>"18") {
echo "晚上好!";
}
?>

运行结果如下:

晚上好!

3、循环结构

循环结构是指在程序中需要反复执行某个或某些操作,直到条件为假或为真时才停止循环一种程序结构。

它由循环体中的条件,判断继续执行某个功能还是退出循环。根据判断条件,循环结构又可细分为以下两种形式:

1、当型循环结构:先判断(条件)再执行。

2、直到型循环结构:先执行后判断。

循环结构可以看成是一个条件判断语句和一个向回转向语句的组合。另外,循环结构的三个要素:循环变量、循环体和循环终止条件 ,循环结构在程序框图中是利用判断框来表示,判断框内写上条件,两个出口分别对应着条件成立和条件不成立时所执行的不同指令,其中一个要指向循环体,然后再从循环体回到判断框的入口处。

在 PHP 8中,有以下循环语句:(详细代码,后面教程有讲解)

1、for循环:for循环是一种常用的循环结构,它允许您指定循环的初始条件、循环条件和循环步骤。

2、while循环: while循环用于在指定条件为真时重复执行一个代码块。它只有一个循环条件。

3、do-while循环: do-while循环与while循环类似,但它先执行一次代码块,然后在指定条件为真时重复执行。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/30861.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

你不了解的Dictionary和ConcurrentDictionary

最近在做项目时&#xff0c;多线程中使用Dictionary的全局变量时&#xff0c;发现数据并没有存入到Dictionary中&#xff0c;但是程序也没有报错&#xff0c;经过自己的一番排查&#xff0c;发现Dictionary为非线程安全类型&#xff0c;因此我感觉数据没有写进去的原因是多线程…

【Fegin技术专题】「原生态」打开Fegin之RPC技术的开端,你会使用原生态的Fegin吗?(下)

内容简介 在项目开发中&#xff0c;除了考虑正常的调用之外&#xff0c;负载均衡和故障转移也是关注的重点&#xff0c;这也是feign ribbon的优势所在&#xff0c;基于上面两篇文章的基础&#xff0c;接下来我们开展最后一篇原生态fegin结合ribbon服务进行服务远程调用且实现负…

网络原因导致git下载报错处理办法

如下&#xff0c;git clone时报错&#xff1a; RPC failed; curl 18 transfer closed with outstanding read data remaining 5670 bytes of body are still expected fetch-pack: unexpected disconnect while reading sideband packet early EOF fetch-pack: invalid index…

基于Python 简易实现接口测试自动化

目录 实现思路 统筹脚本 请求封装 日志封装 结果比对 结果邮件 用例获取及数据格式化 请求url转换 测试用例excel结构 测试报告 邮件接收结果 资料获取方法 实现思路 使用excel管理用例用例信息&#xff0c;requests模块发送http请求&#xff0c;实现了记录日志&…

使用vue模拟通讯录列表,对中文名拼音首字母提取并排序

一个功能需求,做一个类似联系人列表的功能,点击名称获取对应的id,样式简陋,只是一个模板,原来是uniapp项目,根据需要改成了vue,需要的自行设计css&#xff08;万是有一个mo的音&#xff09; 流程 获取数据提取首个字的拼音的首个字母排序并分组 上代码&#xff1a; <temp…

SpringBoot自动装配及run方法原理探究

自动装配 1、pom.xml spring-boot-dependencies&#xff1a;核心依赖在父工程中&#xff01;我们在写或者引入一些SpringBoot依赖的时候&#xff0c;不需要指定版本&#xff0c;就因为有这些版本仓库 1.1 其中它主要是依赖一个父工程&#xff0c;作用是管理项目的资源过滤及…

如何优化 Redis 内存使用

如何优化 Redis 内存使用 一、简介1.1 简介1.2 内存优化意 二、内存使用分析2.1 Redis内存使用机制2.2 Redis内存使用瓶颈分析 三、Redis 内存使用优化3.1 数据压缩3.1.1 压缩规则3.1.2 压缩策略 3.2 内存回收3.2.1 内存淘汰策略3.2.2 定期清除过期数据 3.3 性能优化3.3.1 合理…

实验室如何选择适合的LIMS实验室管理系统

实验室信息管理系统(LIMS)是从20世纪70年代末开始发展起来的&#xff0c;距今在国外已发展40多年。国内发展历史约20多年&#xff0c;且前十几年国内市场上主要是国外进口的LIMS产品&#xff0c;存在价格高、产品重&#xff0c;实施周期长等水土不服的情况。近十年开始&#xf…

ctf中linux内核态的漏洞挖掘与利用系列(一)

说明 该系列文章主要是从ctf比赛入手&#xff0c;针对linux内核上的漏洞分析、挖掘与利用做讲解&#xff0c;本篇文章主要介绍内核漏洞利用所需的前置知识以及准备工作。 linux内核态与用户态的区别 以 Intel CPU 为例&#xff0c;按照权限级别划分&#xff0c;Intel把 CPU指…

深入浅出对话系统——检索式对话系统进阶方法

引言 本文介绍检索式对话系统进阶方法&#xff0c;主要介绍两篇论文工作。 Fine-grained Post-training for Improving Retrieval-based Dialogue Systems 这里的post-training是定义在pre-training和fine-turning中间的阶段&#xff0c;具体的思想是用一些特定领域的数据去…

thymeleaf做一个简单的表单

前期环境 做一个信息提交和图片上传的表单。 主要技术&#xff1a; mysql 数据库 2.springboot 框架 3.前台 thymeleaf模板 4.数据库连接 spring jpa 载入controller层 RequestMapping("/dictoryChange")public String dicitoryChange(Model model){List<Catalo…

Springboot中创建拦截器

目录 目的 实现过程 1、创建拦截器 2、注册拦截器 完整代码 目的 在Springboot项目中创建拦截器&#xff0c;在进入Controller层之前拦截请求&#xff0c;可对拦截到的请求内容做响应处理&#xff0c;如&#xff1a;校验请求参数、验证证书等操作&#xff1b; 实现过程 1、创…

vivado tcl创建工程和Git管理

一、Tcl工程创建 二、Git版本管理 对于创建完成的工程需要Git备份时&#xff0c;不需要上传完整几百或上G的工程&#xff0c;使用tcl指令创建脚本&#xff0c;并只将Tcl脚本上传&#xff0c;克隆时&#xff0c;只需要克隆tcl脚本&#xff0c;使用vivado导入新建工程即可。 优…

如何获取vivado IP列表

TCL命令如下&#xff1a; set fid [open "vivado_included_ip_[version -short].csv" w] puts $fid "Name;Version" set ip_catalog [get_ipdefs *] foreach ip $ip_catalog{ set ipname [get_property DISPLAY_NAME [get_ipdefs $ip]]set iplib [get_p…

Java基础篇--基本数据类型

目录 前言&#xff1a; 内置数据类型 类型默认值 示例: 内置数据类型转换 自动类型转换&#xff08;隐式类型转换&#xff09;&#xff1a; 强制类型转换&#xff08;显式类型转换&#xff09;&#xff1a; 隐含强制类型转换&#xff1a; 引用类型 前言&#xff1a; …

7个最先进的3D模型生成式AI大模型【AIGC】

AI正在不同的行业中出现&#xff0c;我们对 3D 资产生成的前景感到兴奋。 对于游戏开发商和工作室来说&#xff0c;3D 资产通常是开发过程中最棘手的部分之一&#xff0c;容易出现瓶颈。 生产一个模型的成本从 60 美元到 1500 美元不等&#xff0c;需要 2 到 10 周的时间来回制…

禁止输入空格和汉字,以及纯符号

1.禁止输入空格和汉字,以及纯符号 2、可以输入纯数字、纯字母、字母数字的组合、字母符号的组合、符号数字的组合、符号字母数字的组合 <el-form-item :prop"tableData.${$index}.strbatchcode" :rules"!!row.blnbatch ? rules.strbatchcode :rules.strbat…

多个配置WebMvcConfigurationSupport失效问题

最近在项目中用类继承WebMvcConfigurationSupport实现拦截器 Configuration RequiredArgsConstructor public class SpringWebSupport extends WebMvcConfigurationSupport {private final ProjectInterceptor projectInterceptor;// 拦截器 //设置拦截器对象和拦截请求Ove…

tomcat p12证书另存为nginx .crt证书和.key私钥

tomcat p12证书另存为nginx .crt证书和.key私钥 Tomcat使用的.pfx或.keystore文件都是私钥及公钥证书一起的&#xff0c;通过pin保证安全&#xff1b;nginx只需要使用.pem或.crt公钥证书文件和.key私钥即可&#xff0c;如果原ssl证书不方便重新下载&#xff0c;在已有tomcat证…

Vue3 + Ts + Vite 封装一套企业级axiso全流程

前期回顾 从零搭建 Vue3 VIte Ts 项目 —— 并集成eslint 、prettier、stylelint、husky、lint-staged、pinia、axios、loding、动态路由…_彩色之外的博客-CSDN博客 实现功能&#xff1a; 取消重复请求&#xff1a;完全相同的接口在上一个pending状态时&#xff0c;自动取…