流程控制
主要分三种
1、顺序结构:程序自上而下的一个执行过程
2、分支结构:根据某一条件将程序转向不同的分支处执行
3、循环结构:计算机最大的特点是计算速度快,计算机主要用于解决重复性问题
补充
continue:
语法:continue n
n的取值是一个整数,如果省略默认是1
n主要用在循环嵌套下的情况下
结束当前循环结构的本次循环,继续上n层循环结构的下一次循环
举例:
for($j=1;$j<3;$j++){ for($i=1;$i<=9;$i++){ if($i%3==0){ continue 2; } echo $i,'<br>'; } }
运行结果:
for($j=1;$j<3;$j++){ for($i=1;$i<=9;$i++){ if($i%3==0){ continue 1; } echo $i,'<br>'; } }
运行结果:
流程控制在js笔记均有讲解,不过多赘述
详情附链接https://blog.csdn.net/Z_phone/article/details/87002589
流程控制标签语法
if标签语法
标准语法:
<?php if(...){?>
<?php }?>
简化语法:
<?php if(...):?>
<?php endif?>
同理有for标签语法,while标签语法等
举例:
<?php $data=[ [10,'huawei','mate 10',3000], [11,'huawei','mate 11',3000], [12,'huawei','mate 12',3000], [13,'huawei','mate 13',3000] ]; ?> <table border="1" rules="all"> <tr> <th>id</th> <th>name</th> <th>code</th> <th>price</th> </tr> <?php for($i=0;$i<4;$i++){?> <tr> <td><?php echo $data[$i][0]?></td> <td><?php echo $data[$i][1]?></td> <td><?php echo $data[$i][2]?></td> <td><?php echo $data[$i][3]?></td> </tr> <?php }?> </table>
运行结果:
文件载入
1、介绍
- 在实际开发过程中,经常会在一个PHP文件中引入其他文件
- 被引入的文件可以是HTML文件也可以是PHP文件
- 引用文件主要两种目的:
1、当前文件(PHP)有数据,想在被引用的文件(HTML)中显示
2、当前文件(PHP)中想使用另一个文件(PHP)中的功能性代码
2、语法
1、require
require(文件名)
require_once(文件名);
2、include
include(文件名)
include_once(文件名);
注意:如果引入的是函数,需要先引入后调用
3、引入路径问题
在实际项目中,对于HTML文件,我们不允许用户直接请求,而是指向一个PHP文件,让PHP文件来引用处理这个HTML文件
当一个PHP文件引入一个HTML文件时,HTML本身也会引入一些其他的文件,如:图片文件、CSS文件、js文件。这时发生路径更改的问题,路径要以当前PHP文件所在位置为起点
4、require与include的区别
include在引入文件时,如果被引入的文件不存在则会报错,但程序还会继续向下执行。
require在引入文件时,如果被引入的文件不存在,则会中断程序的执行
所以:
require一般用于引入PHP文件。因为PHP里面一般书写的是功能性代码
include一般用于引入HTML文件
include_once、require_once每次在引入文件时,都会检查被引入的文件之前有没有被引入过,如果有则不再引入
include、require则没有这样的功能
5、_ _DIR_ _和_ _FILE_ _
_ _DIR_ _:用于获取所在文件的完整文件名
_ _FILE_ _:用于获取所在的文件的路径
_ _DIR_ _与_ _FILE_ _并不会别引入后所更改。永远代表_ _DIR_ _和_ _FILE_ _所在文件的文件名与文件夹名
错误机制(了解)
1、错误分类
1、编译错误
最容易解决,很多都是书写问题,走不到执行阶段
2、执行错误
一旦发生错误,会根据错误的等级来决定是否中断程序的执行
3、逻辑错误
最难排查的
2、错误代码
在PHP错误处理机制中,每一种错误都使用了一种错误标识,错误标识是以常量形式存在
1、获取错误代码
2、系统错误
E_ERROR:致命错误,一旦发生中断程序执行
E_WARNING:警告错误,一旦发生并不会中断程序执行
E_NOTICE:提示错误,一旦发生并不会中断程序执行
E_PARSE:编译错误,一旦发生中断程序执行
3、自定义错误
E_USER_ERROR:用户级的致命错误,一旦发生中断程序执行
E_USER_WARNING:用户级的警告错误,一旦发生并不会中断程序执行
E_USER_NOTICE:用户级的提示错误,一旦发生并不会中断程序执行
3、错误的触发
1、系统错误的触发
程序员无法干涉系统错误的触发,系统错误由PHP自己检测并触发
2、自定义的错误
trigger_error();
语法:
trigger_error(msg,type);
msg:描述错误信息
type:自定义的错误代码(E_USER_ERROR、E_USER_WARNING、E_USER_NOTICE)
提示:使用错误处理机制的好处是,可以将错误记录起来。默认会被记录到Apache的/log/error.log文件中。
4、错误的控制设置
PHP错误控制可以在php.ini中进行。我们可以控制错误是否显示,还可以显示哪一类的错误
5、错误的日志文件的设置