11PHP网站开发系列课程.ppt_第1页
11PHP网站开发系列课程.ppt_第2页
11PHP网站开发系列课程.ppt_第3页
11PHP网站开发系列课程.ppt_第4页
11PHP网站开发系列课程.ppt_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、知新,这节课,我们将学习到以下内容: 1.图像处理函数 2.验证码的制作 3.PHP输出缓冲 4.错误处理函数 5.网页静态化,第八章 应用技术,2.错误处理函数 在任何程序运用中,错误处理都是一个非常重要的部分, 不论是在开发过程中还是已经被应用的产品。,第八章 应用技术,2.错误处理函数 PHP中的错误类型: 在我们开发PHP程序时,经常会与错误打交道,在PHP 中,我们将错误分成了3个级别,分别为: Parse error解释器错误 Fatal error致命错误 Warning警告 Notice提示,第八章 应用技术,2.错误处理函数 我们现在来挨个的阐述每一种错误发生的情况及其给程序

2、 带来的影响。 Parse error 解释器错误,在脚本的语法不正确时引发 的一类特定错误。当运行程序时,解释器 会先扫描你的程序文档,看有没有语法使用 不正确的情况,如果有,就报出Parse error 程序代码将不会执行。 注意:Parse error是发生在程序代码执行之前。,第八章 应用技术,2.错误处理函数 Parse error往往是由于你在程序开发中使用了不正确的语 法引发的,比如说语句结束后忘记分号,大括号没有成对出 现,调用函数时的小括号没有出现等等情况。,第八章 应用技术,2.错误处理函数 Fatal error 致命错误,在程序运行过程中,程序代码出现 的无法恢复的错误

3、。 注意: Fatal error是在程序运行时发生的错误,当程序在运行的时 候一旦发生Fatal error,程序将会从错误发生的行终止以下 所有代码行的运行。,第八章 应用技术,2.错误处理函数 在开发程序的过程中,Fatal error往往是因为用户调用一个 没有定义的函数或在页面中定义了2个同名的函数等引发的。,第八章 应用技术,2.错误处理函数 Warning 警告,非致命错误,如调用带有无效参数的函数 将会引发警告信息,但在现实警告信息后脚本 继续执行。 Notice 提示,可能意味着在执行脚本时发生了错误,也 可能是脚本正常运行的一种情况,例如访问一个 没有设置的变量等。但是在提

4、示信息后脚本继续 执行。,第八章 应用技术,2.错误处理函数 在一个程序开发好后,程序中也难免出现一些错误, 但是一旦这些错误展现在用户的浏览器上就不好了,现在 我们来看看部分的报错信息。,第八章 应用技术,我们仔细的看看上面的那段报错信息, 你会发现,你数据库服务器的地址,连接 数据库的用户名以及你程序所存放的路径 都现实在了页面上了。 如果一般的用户看到这些信息,会感觉很不 友好,如果是不怀好意的人看到,对服务器 来说就是非常危险的一件事了。,第八章 应用技术,所以说我们必须要控制页面的错误信息的输出 在PHP中提供了相应的函数来帮我们解决这样 的问题。语法为: Error_reporti

5、ng(错误级别); 设置PHP报告的错误类型。,第八章 应用技术,错误级别如下:,第八章 应用技术,第八章 应用技术,定义错误处理程序 上面所讲述的内容可以帮你禁止错误的输出 但是如果你想更好的控制错误而不仅仅是 禁止任何错误,你可以向PHP提供一个错误 处理程序,任何种类的异常情况都会调用该 错误处理程序,从向文件中写入日志信息到 输出错误消息等等。,第八章 应用技术,在PHP中可以通过set_error_handler函数 向系统注册错误处理函数。语法为: Set_error_handler(错误处理函数名) 向PHP注册错误处理函数。 当发生错误时,错误处理函数将会收到系统 发送来的5个

6、参数,分别为: 错误编号,错误字符串,错误文件名,错误 行数,系统环境信息。,第八章 应用技术,在PHP中还提供了一个函数让我们来将错误 信息记录到错误日志中。语法为: Error_log(错误信息,记录类型,日志文件 名); 在这里 记录类型包含以下几项: 0 通过PHP的标准日志记录错误信息 1用电子邮件将错误发送到目的地址 3将错误信息记录到指定的日志文件中,第八章 应用技术,输出缓冲 PHP的所有输出都是通过WEB浏览器进行的 因此,可以使用一些不同的技术处理,以使 得输出更有效率或更方便。,第八章 应用技术,输出缓冲 在默认情况下,PHP在echo和其他类似命令 执行完毕后将执行结果

7、送到浏览器。 那么我们现在考虑这样一个问题,比如一个 新闻网站,发布了一条热点新闻,假设那条 新闻今天有1000人点击,那么我们想想, 同样的这一条新闻将会运行1000次。 这样重复的操作浪费的内存是相当大的。,第八章 应用技术,请求readNews.php页面,MySQL Server 数据库服务器,mysql_connect(),readNews.php,返回相应的内容,客户端,服务器,第八章 应用技术,输出缓冲 解决的方法就是可以使用PHP中的缓冲。 可以首先将这些输出在发送到浏览器之前 先将它放入系统的缓冲中,等用户再次 访问时,直接从缓冲中读出后不需要再执行 直接发送到客户端。,第八

8、章 应用技术,请求readNews.php页面,MySQL Server 数据库服务器,mysql_connect(),readNews.php,返回相应的内容,客户端,服务器,缓冲区,第八章 应用技术,请求readNews.php页面,如果缓冲存在,则 直接转到缓冲。,readNews.php,返回相应的内容,客户端,服务器,缓冲区,第八章 应用技术,输出缓冲 在PHP中,可以使用ob_start()函数来打开 输出缓冲功能。语法为: Ob_start() 打开PHP的输出缓冲功能,打开后,所有的 页面输出都将先发送到缓冲区后再送到客户端 注意,ob_start()函数必须在任何输出之前。,

9、第八章 应用技术,输出缓冲 当所有的内容发送到缓冲区中,还可以通过 Ob_get_contents函数来取得缓冲区中的 信息。语法为: Ob_get_contents(); 得到缓冲区中所有的内容。,第八章 应用技术,输出缓冲 你当然可以想到,如果将所有的数据全部放进 缓冲区而不清除,将会造成不可想象的后果, 所以我们还需要清空缓冲区,语法为: Ob_end_clean(); 清空缓冲区中的所有数据,并关闭输出缓冲 功能。,第八章 应用技术,通过上面的内容,我们就可以操作缓冲区了 现在我们将通过缓冲区来将动态程序生成 静态页面了。 那么我们下面通过实例来讲解如何使用 缓冲区来生成静态页面。,第八章 应用技术, title ,模板页,替换相应 标签,模板处理程序,读取模板,缓冲区,输出替换结果,取出缓冲内容, 标题 ,静态页,写入内容, 标题,回顾,这节课,我们学习到了以下内容: 1.图像处理函数 2.验证码的制作 3.PHP输出缓冲 4.错误处理函数 5.网页静态化,回顾,这节课,我们学习了以下函数: Error_reporting控制PHP错误输出 Set_error_handler申

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论