php笔记之文件载入和异常处理

廉价感情. 提交于 2020-01-16 15:54:00

文件载入

介绍

 在实际的开发中,经常会在一个php文件中导入其他的文件,被引入的文件可以是html也可以是php文件

语法

require

require(文件名)
require_once(文件名)

示例:

include

include(文件名)
include_once(文件名)

在引用文件时,主要有两种使用目的:

当前文件(php)有数据,想要被引用的文件(html)显示

 

 在当前文件(php)想要使用,另一个文件(php)中的功能性代码:

引入路径问题

在实现项目中,对于html文件,我是不允许用户直接请求,而是指向一个php文件,让php文件来引用这个html文件

当一个php文件引入一个html文档时,html文件本身也会引入一些其他的文件,如图片文件,css文件,js文件,这时会发生改变路径的问题。路径要以当前php文件所在的路径问起点

 

include和require的区别

include在引入文件时,如果被引入的文件不存在则会报错,但程序还会继续向下执行

require在引入文件时,如果被引入的文件不存在,则会上断程序的执行

经验法则:

require 一般用于引入php文件,因为php里面一般书写的是功能性的代码

include一般用于引入html文档

include、require VS include_once 、require_once的区别

include_once require_once每次引入文件时,都会检查所要引入的文件之前有没有被引入过,如果有被引入就不会再引入

include require没有这样的检查流程

__DIR__\__FILE__

__FILE__  用于获取文件所在的完整文件名

__DIR__  用于获取文件所在的路径

__FILE__ 和__DIR__并不会被引入后所更改。永远代码__FILE__ 和__DIR__所在文件的文件名和文件夹名

异常处理

错误的分类

1编译错误

在编译的过程中发生的错误就是编译错误,编译错误最容易解决的,很多是由于书写错误

 执行错误

在编译通过之后,在执行阶段发生的错误,此种错误一旦发生,会根据错误的等级,来决定是否中断程序的执行

逻辑错误

由于程序的逻辑不严谨,而产生的错误,此种错误是最难排查的,程序可以正常执行,但最终的结果不是我们所期望的

错误代码

在php的错误机制中,每一种错误都使用了一个错误标识,错误标识是常量的形式存在

获取错误代码

 系统错误

E_ERROR                    致命错误,一旦发生就会中断程序的执行

E_WRRING                 警告错误,一旦发生并不会中断程序的执行,

E_NOTICE                   提示错误,一旦发生并不会中断程序的执行,

E_PARSE                     编译错误,一旦发生就会中断程序的执行

自定义错误

E_USER_ERROR          用户级的致命错误,一旦发生就会中断程序的执行

E_USER_WRRING       用户级的警告错误,一旦发生并不会中断程序的执行,

E_USER_NOTICE        用户级的提示错误,一旦发生并不会中断程序的执行

所有的错误

E_ALL

错误的触发

系统错误的触发

程序员无法干涉系统错误的触发,系统错误有php自己检测并触发的

 自定义的错误

trigger_error();

语法:

trigger_error(msg,type);

说明:

msg   错误的描述信息

type  自定义错误的代码(E_USER_ERROR、E_USER_WARNING、E_USER_NOTICE)

 

 提示:

使用错误处理机制的好处是,可以将错误记录起来,默认会被记录到apache的/logs/error.log文件中

错误的控制设置

php错误控制可以在php.ini中进行,我们可以控制错误是否显示,还可以控制显示哪一类的错误

控制是否显示错误

display_errors=on 显示错误
display_errorrs=off  关闭错误的显示

控制显示哪一类错误

error_reporting=

 错误的日志文件的设置

我们还可以控制是否记录错误,以及错误日志的记录位置

是否记录记录

log_errors=on 记录错误

log_errors=off 不记录错误

错误记录的位置

如果没有设置error_log默认是记录到apache的错误日志中\log\error.log

error_log=syslog        会记录到操作系统的日志中

error_log=文件名      记录到自定义的位置

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!