PHP 流程控制
流程控制
if, else, elseif
$a = 5;
$b = 9;
if ($a > $b):
echo "a is bigger than b";
elseif ($a == $b):
echo "a is equal to b";
else:
echo "a is smaller than b";
endif;
if ($a > $b) {
echo "a is bigger than b";
} elseif ($a == $b) {
echo "a is equal to b";
} else {
echo "a is smaller than b";
}
while
while (expr)
statement
while (expr):
statement
...
endwhile;
do-while
<?php
$i = 0;
do {
echo $i;
} while ($i > 0);
?>
for
for 循环是 PHP 中最复杂的循环结构。
for (expr1; expr2; expr3)
statement
for (expr1; expr2; expr3):
statement;
...
endfor;
foreach
foreach 语法结构提供了遍历数组的简单方式。
foreach (array_expression as $value)
statement
foreach (array_expression as $key => $value)
statement
用 list() 给嵌套的数组解包
<?php
$array = [
[1, 2],
[3, 4],
];
foreach ($array as list($a, $b)) {
// $a contains the first element of the nested array,
// and $b contains the second element.
echo "A: $a; B: $b\n";
}
?>
break
break 结束当前 for,foreach,while,do-while 或者 switch 结构的执行。
break 可以接受一个可选的数字参数来决定跳出几重循环。
continue
continue 在循环结构用用来跳过本次循环中剩余的代码并在条件求值为真时开始执行下一次循环。
continue 接受一个可选的数字参数来决定跳过几重循环到循环结尾。默认值是 1,即跳到当前循环末尾。
switch
switch 语句类似于具有同一个表达式的一系列 if 语句。
<?php
if ($i == 0) {
echo "i equals 0";
} elseif ($i == 1) {
echo "i equals 1";
} elseif ($i == 2) {
echo "i equals 2";
}
switch ($i) {
case 0:
echo "i equals 0";
break;
case 1:
echo "i equals 1";
break;
case 2:
echo "i equals 2";
break;
}
?>
require, include
require 和 include 几乎完全一样,除了处理失败的方式不同之外。
require 在出错时产生 E_COMPILE_ERROR 级别的错误。 换句话说将导致脚本中止而 include 只产生警告(E_WARNING),脚本会继续运行。
require_once, include_once
require_once 语句和 require 语句完全相同,
唯一区别是 PHP 会检查该文件是否已经被包含过,如果是则不会再次包含。
php如何编写分支语句
#语法
if(条件){
条件为true时执行此代码
}elseif(condition){
条件为true时执行此代码
}else{
条件为false时执行此代码
}
#分支语句实例
$t = date("H");
if($t<"10"){
echo "Have a good morning!";
}elseif($t<"20"){
echo "Have a good day!";
}else{
echo "Have a good night!";
}
php如何编写循环语句
- while
while (条件为真) {
要执行的代码;
}
#例子,while是先判断后执行,变量是控制器一定要注意改变。
$myvar = 10;
while($myvar>0){
echo $myvar;
$myvar--;
}
- do...while
#do...while(称为当次循环,先执行后判断)
$myvar = 10;
do{
echo $myvar;
$myvar--;
}while($myvar>0);
- for
#for语句是非常经典的
for($i=0;$i<10;$i++){
echo $myvar;
}
- foreach
#foreach适用于数组
$colors = array("reb","green","blue","yellow");
foreach($colors as $key => $value){
echo $value;
}
php如何编写跳转语句
- continue跳过当次循环
- break跳出循环
- goto跳转语句
goto mylabel;
echo "Hello World!";
mylabel:
echo "Moments";
php如何编写递归语句
#将字符串进行倒排输出
$myvar = "abcd";
function reverse($myvar, $flag=-1){
if($flag<strlen($myvar)-1){
$flag++;
$myvar = reverse(substr($myvar,0,$flag).substr($myvar,strlen($myvar)-1).substr($myvar,$flag,strlen($myvar)-1-$flag), $flag);
}
return $myvar;
}
echo reverse($myvar);
php如何编写异常处理语句
- 简单的die()语句
$conn = mysql_connect("localhost","root","123456") or die("Error");
- error_reporting() 设置 PHP 的报错级别并返回当前级别。
//不报告所有错误
error_reporting(~E_ALL);
//报告运行时错误
error_reporting(E_ERROR | E_WARNING | E_PARSE);
- 异常处理
try{
//可能出现错误或异常的代码
//catch 捕获 Exception是php已定义好的异常类
} catch(Exception $e){
echo $e->getMessage();
//对异常处理,方法:
//1、自己处理
//2、不处理,将其再次抛出
}
衿华客
php 教程
- PHP简介
- PHP安装
- PHP语法
- PHP数据类型
- PHP变量
- PHP运算符
- PHP流程控制
- PHP函数
- PHP类与对象
- PHP字符串
- PHP正则表达示
- PHP文件
- PHP图形图像
- PHPXML
- PHP会话缓存
- PHP异常处理
- PHP数据库
- PHP日期时间戳
- PHP代码风格规范
server 环境
frame 框架
- laravel入门
- dingo入门
- JWT入门
- Laravel框架关键技术解析
- laravel则修笔记
- rpc入门
- rabbitmq入门
- opencc多国语言
- laravel兄弟连笔记
- laravel进阶
case 实例
db 数据库
help
PHP 流程控制的更多相关文章
- 第10章 Shell编程(4)_流程控制
5. 流程控制 5.1 if语句 (1)格式: 格式1 格式2 多分支if if [ 条件判断式 ];then #程序 else #程序 fi if [ 条件判断式 ] then #程序 else # ...
- Shell命令和流程控制
Shell命令和流程控制 在shell脚本中可以使用三类命令: 1)Unix 命令: 虽然在shell脚本中可以使用任意的unix命令,但是还是由一些相对更常用的命令.这些命令通常是用来进行文件和文字 ...
- PHP基础知识之流程控制的替代语法
PHP 提供了一些流程控制的替代语法,包括 if,while,for,foreach 和 switch. 替代语法的基本形式是把左花括号({)换成冒号(:),把右花括号(})分别换成 endif;,e ...
- Python黑帽编程2.4 流程控制
Python黑帽编程2.4 流程控制 本节要介绍的是Python编程中和流程控制有关的关键字和相关内容. 2.4.1 if …..else 先上一段代码: #!/usr/bin/python # - ...
- 使用yield进行异步流程控制
现状 目前我们对异步回调的解决方案有这么几种:回调,deferred/promise和事件触发.回调的方式自不必说,需要硬编码调用,而且有可能会出现复杂的嵌套关系,造成"回调黑洞" ...
- [Java入门笔记] Java语言基础(四):流程控制
流程控制指的是在程序运行的过程中控制程序运行走向的方式.主要分为以下几种: 顺序结构 顺序结构,顾名思义,是指程序从上往下逐步顺序执行.中间没有任何的判断和跳转. 分支结构 Java提供两种分支结构: ...
- node基础13:异步流程控制
1.流程控制 因为在node中大部分的api都是异步的,比如说读取文件,如果采用回调函数的形式,很容易造成地狱回调,代码非常不容易进行维护. 因此,为了解决这个问题,有大神写了async这个中间件.极 ...
- Shell入门教程:流程控制(1)命令的结束状态
在Bash Shell中,流程控制命令有2大类:“条件”.“循环”.属于“条件”的有:if.case:属于“循环”的有:for.while.until:命令 select 既属于“条件”,也属于“循环 ...
- Oracle中PL/SQL的执行部分和各种流程控制
Oracle中PL/SQL的执行部分和异常部分 一.PL/SQL的执行部分. 赋值语句. 赋值语句分两种,一种是定义一个变量,然后接收用户的IO赋值:另一种是通过SQL查询结果赋值. 用户赋值举例: ...
- swift_简单值 | 元祖 | 流程控制 | 字符串 | 集合
//: Playground - noun: a place where people can play import Cocoa var str = "Hello, playground& ...
随机推荐
- Delphi下如何使程序在Win7/Vista上用管理员权限运行(转)
Delphi程序必须在资源里面嵌入MANIFEST信息 一 首先编辑一个文件,内容如下: <?xml version="1.0" encoding="UTF-8&q ...
- Windows系统的Jenkins持续集成环境
Windows系统的Jenkins持续集成环境 如题:本文将介绍如何在Windows环境下运用Jenkins部署持续集成环境.之所以写本文,是因为在最近工作当中,学习使用Jenkins时,确实遇到了一 ...
- FAT12中,如何定位大于一个扇区(512B)的文件内容
[0]README 0.1)本文旨在于 演示在FAT12中, 如何取定位大于 512B 的文件内容,和查看它: 0.2)如何制作FAT12文件系统,以及如何向文件中添加temp.txt文件,参见: { ...
- Executors几种常用的线程池性能比较
java编程中,经常会利用Executors的newXXXThreasPool生成各种线程池,今天写了一小段代码,简单测试了下三种常用的线程池: import com.google.common.ut ...
- iOS 可选择的购物车
最近看了淘宝的购物车,于是做了一个可选择的购物车模板. 如果有好的建议请提出,带我日后更新.
- linux程序设计——网络信息(第十五章)
15.3 网络信息 当眼下为止,客户和server程序一直是吧地址和port号编译到它们自己的内部. 对于一个更通用的server和客户程序来说.能够通过网络信息函数来决定应该使用的地址和por ...
- mongodb.py
from chatterbot.storage import StorageAdapter class Query(object): def __init__(self, query={}): sel ...
- C#的默认访问权限(转)
1.在namespace中的类.接口默认是internal类型的,也可以显示的定义为public类型,不允许是其他访问类型.2.在一个类里面,属性和方法默认是private的,可以显示的定义为publ ...
- string 转 LPCTSTR
(1)在ANSI字符集下 LPCTSTR想当于LPCSTR,当中L指long.P指Point,C指Const.在程序中能够直接用char*类型的数据对LPCSTR进行赋值,用下述语句: LPCSTR ...
- c# &与&& 和 |与||的区别(转载)
&:按位与,对两个条件都进行判断&&:逻辑与,只要一个条件满足,另外一个条件就不会执行 同理:|:按位或,对两个条件都进行判断||:逻辑或,只要一个条件满足,另外一个条件就不会 ...