网易首页 > 网易号 > 正文 申请入驻

0057 PHP编程语言的条件和循环语句以及函数

0
分享至

上一节课讲的是PHP编程语言的基础语法和一些简单例子。

这节课来说明几种基本的程序逻辑以及函数的用法,包括常用的字符串函数和数组函数。

PHP条件语句 if...else...elseif

三种代码执行顺序逻辑语句:顺序执行/条件分支执行/循环执行。

条件分支语句可以根据不同的条件执行不同的代码。

if语句:如果指定条件为true,则执行代码。

if...else语句:如果条件为true,则执行代码;如果条件为false,则执行另一段代码。

if...elseif...else:根据条件选择某段代码执行。

if语句的语法:

if (条件) {

条件为true时执行的代码

}

例子:

$score=60;

if ($score>=60){

echo "及格了"."\r\n";

}

注意:PHP的语法主要靠括号以及花括号或者分号进行分隔,因此不需要像Python那样严格的格式要求。

例如上面的代码也可以放在一行中:if ($score>=60){echo "及格了"."\r\n";}

if...else语句的语法:

if (条件) {

条件为true时执行的代码

} else {

条件为false时执行的代码

}

例子:

$score=59;

if ($score>=60) {

echo "及格了"."\r\n";

} else {

echo "不及格"."\r\n";

}

if...elseif...else语句的语法:

if (条件1) {

条件1为true时执行的代码

} elseif (条件2) {

条件2为true时执行的代码

} elseif (条件3) {

条件3为true时执行的代码

} else {

条件全部为false时执行的代码

}

例子:

$score=88;

if ($score>=85) {

echo "优秀"."\r\n";

} else if ($score>=70) {

echo "一般"."\r\n";

} else if ($score>=60) {

echo "及格"."\r\n";

} else {

echo "不及格"."\r\n";

}

例子代码如下:

例子运行结果:

PHP循环while语句

常用的循环语句时while循环语句和for循环语句。

while循环语句有2种:

while语句:当条件为true时,循环执行语句。

do...while语句:先执行一次代码块,然后只要条件为true则循环执行。

这2种的区别在于一种是先判断再循环,一种是先执行一次再判断再循环。

do...while语句其实也可以使用while语句实现,所以不是必须的,但在某些情况下do...while语句可以精简代码。

while语句语法:

while (条件) {

当条件为true时,重复执行的代码

}

$c=0;

while ($c<10) {

$c++;

echo "while循环次数:".$c."\r\n";

}

do...while语句语法:

$c=0;

do {

$c++;

echo "dowhile循环次数:".$c."\r\n";

} while ($c<10)

这2种情况在初始值不同的情况下,可能结果不同。例如当初始值$c=10;的情况下就会不一样。

例子代码如下:

例子运行结果:

PHP循环for语句

for循环语句有2种:

for语句:已知循环次数或情况下,循环执行。

foreach语句:适用于数组,遍历数组中的每个元素执行。

for语句语法:

for (条件初始化; 条件判断; 条件变量改变) {

满足条件时循环执行的代码

}

例子:

for ($c=0;$c<5;$c++) {

echo "for循环次数:".$c."\r\n";

}

for ($n=0;$n<20;$n=$n+2) {

echo "步进2for循环次数:".$n."\r\n";

}

foreach语句语法:

foreach (数组变量 as 元素变量) {

遍历每个元素,循环执行的代码,每次的元素变量的值会不一样

}

例子:

$colors=array("red","green","blue");

foreach ($colors as $onecolor) {

echo "foreach循环:".$onecolor."\r\n";

}

$ages=array("tom"=>36,"jack"=>48,"michael"=>19);

foreach ($ages as $name=>$age) {

echo "带键的foreach循环:name:".$name.":age:".$age."\r\n";

}

例子代码如下:

例子运行结果:

PHP循环的continue和break语句

如果需要中途忽略某种情况跳到下一个元素继续循环,可以使用continue语句。

例子:

for ($c=0;$c<10;$c++) {

if ($c % 2 ==1) {

//奇数的时候不做处理,跳到下一次循环

continue;

}

echo "偶数:".$c."\r\n";

}

如果需要中途退出循环语句,可以使用break语句。

例子:

$ages=array("tom"=>36,"jack"=>48,"michael"=>19,"alex"=>16);

foreach($ages as $name=>$age){

if ($age<20) {

echo "第一个年轻人:".$name."的年龄是".$age."岁。"."\r\n";

//退出循环

break;

}

echo "带键的foreach循环:name:".$name.":age:".$age."\r\n";

}

结果可以看到,break退出之后,最后一个alex没有处理了。

例子代码如下:

例子运行结果:

PHP函数

PHP有很多内置的函数,当然也可以自己创建函数。

函数就是一组代码组合起来,并可以在代码中重复使用。

函数有一个函数名,并可以设置传入的参数和返回值。

函数自己不会执行,只有被调用才会执行。

创建函数语法:

function 函数名(参数1,参数2...) {

函数执行代码块

}

函数名必须时字母或者下划线开头,不能以数字开头。

函数名对大小写不敏感,例如Echo 和 ECHO是一样的。

例如:

function writeInfo() {

echo "hello"."\r\n";

}

function writeMyName($name) {

echo "name is ".$name."\r\n";

}

调用函数:

writeInfo();

$myname="michael";

writeMyName($myname);

函数有返回值例子:

function add($a,$b) {

return $a+$b;

}

调用函数:

$x=3;

$y=6;

echo add($x,$y)."\r\n";

例子代码如下:

例子运行结果:

PHP常用字符串函数

字符串是常用的数据类型,系统内置了很多字符串函数,下面介绍一些常用的字符串函数。

trim:移除字符串两侧的空白字符。

strlen:返回字符串的长度。

explode:把字符串打散为数组。

implode:返回由数组元素组合成的字符串

substr:返回字符串的一部分。

其它函数,大家可以自行搜索PHP手册进行自学。

例子:

$str1=" hello world ";

echo "trim结果:".trim($str1)."\r\n";

$str2="this is a new world.";

echo "strlen结果:".strlen($str2)."\r\n";

$ret=explode(" ",$str2);

echo "explode结果:"."\r\n";

var_dump($ret);

$ret2=implode(",",$ret);

echo "impolde结果:".$ret2."\r\n";

echo "substr结果:".substr($str2,2,4)."\r\n";

例子代码如下:

例子运行结果:

PHP常用数组函数

数组是最常用的数据类型,系统内置了很多数组函数,下面介绍常用的及格函数,更多的函数情查看PHP手册。

array:新建一个数组。

count:返回数组的元素总个数。

array_keys:返回数组的所有键名。

array_key_exists:判断键名是否存在于数组中。

array_values:返回数组中所有的元素值。

sort:对数组进行排序。

例子:

$colors=array("red","green","blue");

echo "count结果:".count($colors)."\r\n";

echo "array_keys结果:"."\r\n";

var_dump(array_keys($colors));

$ages=array("tom"=>36,"jack"=>48,"michael"=>19);

echo "array_keys结果:"."\r\n";

var_dump(array_keys($ages));

echo "array_key_exists结果:"."\r\n";

var_dump(array_key_exists("jack",$ages));

echo "array_key_exists结果:"."\r\n";

var_dump(array_key_exists(5,$colors));

echo "array_values结果:"."\r\n";

var_dump(array_values($colors));

echo "array_values结果:"."\r\n";

var_dump(array_values($ages));

sort($colors);

echo "sort结果:"."\r\n";

var_dump($colors);

sort($ages);

echo "sort结果:"."\r\n";

var_dump($ages);

例子代码如下:

例子运行结果:

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
2024年5月机关事业单位人员退休,个人账户6万,养老金有8000吗?

2024年5月机关事业单位人员退休,个人账户6万,养老金有8000吗?

社保小达人
2024-04-23 10:23:50
埃弗顿上次主场战胜利物浦在2010年,当时阿尔特塔还曾破门

埃弗顿上次主场战胜利物浦在2010年,当时阿尔特塔还曾破门

直播吧
2024-04-25 05:36:15
即将开播!40集谍战剧来袭,全员演技在线,导演实力不俗,要火了

即将开播!40集谍战剧来袭,全员演技在线,导演实力不俗,要火了

猪猪侃娱乐
2024-04-24 20:36:22
爆料!人民币对美元中间价报7.1048,新纪录打破常规!

爆料!人民币对美元中间价报7.1048,新纪录打破常规!

农村阿祖
2024-04-25 01:15:24
中国面临奥运抉择

中国面临奥运抉择

刺头体育
2024-04-24 22:29:18
浙江县城一户130㎡新房火了:全屋没有一丝俗气,堪称装修教科书

浙江县城一户130㎡新房火了:全屋没有一丝俗气,堪称装修教科书

家装设计大全
2024-04-24 17:38:04
重罚周琦!肘击暴揍广厦中锋,CBA连夜做重大决定,杜锋不妙

重罚周琦!肘击暴揍广厦中锋,CBA连夜做重大决定,杜锋不妙

胖周聊球
2024-04-24 09:23:20
苏克:从足球巨星到优步司机

苏克:从足球巨星到优步司机

星耀国际足坛
2024-04-24 00:26:13
恰20:永远忘不了米兰球迷对我家人的所作所为,夺冠是巨大复仇

恰20:永远忘不了米兰球迷对我家人的所作所为,夺冠是巨大复仇

直播吧
2024-04-24 17:04:24
“给我的时间太短了!”前京东副总裁、渐冻人蔡磊病情加重

“给我的时间太短了!”前京东副总裁、渐冻人蔡磊病情加重

齐鲁壹点
2024-04-24 07:54:43
局长儿子嚣张跋扈打断同学门牙,同学母亲亮明身份,对方下跪求饶

局长儿子嚣张跋扈打断同学门牙,同学母亲亮明身份,对方下跪求饶

真实故事汇
2023-12-19 21:59:16
不出10年,中国“最贵的”不是房子车子,而是这4样不起眼的东西

不出10年,中国“最贵的”不是房子车子,而是这4样不起眼的东西

山丘楼评
2024-04-23 11:13:52
1972年,内蒙古兵团下达了一道荒唐的命令,让69名战士被活活烧死

1972年,内蒙古兵团下达了一道荒唐的命令,让69名战士被活活烧死

拙言问史
2024-04-24 21:36:08
A股:大家要做好心理准备,A股,很可能会重演历史?

A股:大家要做好心理准备,A股,很可能会重演历史?

财经大拿
2024-04-25 03:40:03
江苏南京一市民称骑自行车上路因无牌被罚50元,当地交管部门回应

江苏南京一市民称骑自行车上路因无牌被罚50元,当地交管部门回应

纵览新闻
2024-04-24 01:58:49
“榜一大哥”的真面目:侵吞公款127万打赏女主播!其父亲手将他送到纪委

“榜一大哥”的真面目:侵吞公款127万打赏女主播!其父亲手将他送到纪委

红星新闻
2024-04-23 22:09:14
我终于和他发生了关系

我终于和他发生了关系

佰事可乐
2024-04-24 19:14:37
城事 | 天津保障性租赁住房大名单来了!

城事 | 天津保障性租赁住房大名单来了!

天津广播
2024-04-24 16:18:17
“太大胆了,必须开除!”广西某学校,一年轻女老师拿着粉笔,在

“太大胆了,必须开除!”广西某学校,一年轻女老师拿着粉笔,在

娱乐八卦木木子
2024-04-24 21:31:15
黑丝长腿小姐姐的会议室写真

黑丝长腿小姐姐的会议室写真

农人老寓
2024-04-24 15:38:02
2024-04-25 06:00:49
学哥读书
学哥读书
读万卷书,行万里路,知行合一
1200文章数 3392关注度
往期回顾 全部

科技要闻

特斯拉被爆大量毁约应届生 友商"在线抢人"

头条要闻

美总统拜登签署剥离法案 TikTok发声明反对

头条要闻

美总统拜登签署剥离法案 TikTok发声明反对

体育要闻

足智多谋的哈姆,温水里的青蛙

娱乐要闻

方媛带两女儿参加婚礼,当花童超可爱

财经要闻

居民气价确实在涨,多地正普遍发生

汽车要闻

这灯效我能看半小时 奥迪Q6L e-tron有备而来

态度原创

健康
数码
教育
公开课
军事航空

这2种水果可降低高血压死亡风险

数码要闻

苹果5月7日发布会邀请函: 全新iPad Pro 2024将亮相

教育要闻

J人必备的功能性学习方法总结|南京大学411分新传考研经验帖

公开课

睡前进食会让你发胖吗?

军事要闻

时隔5年土耳其或首部署俄制防空系统

无障碍浏览 进入关怀版