版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第十四章Web程序设计程序调试与错误处理新工科建设之路·计算机类专业系列教材01程序调试的基本流程01文件概述基本调试流程如图14-1所示。01文件概述常用的调试方法如下。①增加中间变量或跟踪变量。当程序结果与预期结果不一致时,可以通过增加中间变量,或者输出一些相关的变量值来发现错误根源。②应用注释语句排除法调试程序。③通过调试器来单步调试,可以跟踪整个程序的执行过程,发现是否有些应该被执行的函数没有被执行,或者变量赋值错误等各种导致错误的原因。02常见的错误类型02常见的错误类型01语法错误1缺少结束符引起的语法错误在编写PHP代码时,要求每一行代码以“;”结束,如果代码编写人员因疏忽未写结束符“,”,在运行或调试程序时就会发生错误。缺少单引号或双引号引起的语法错误在编写代码时,开发人员可能由于书写错误,使用单引号或双引号时少写一个,或者由于字符串两侧使用的引号不一致导致语法错误。202常见的错误类型01语法错误3缺少括号引起的语法错误与C/C++语法类似,PHP中诸如for循环、while循环及包含多条语句的if代码块都需要使用大括号。如果代码行数较多,很可能造成大括号遗漏。缺少变量标识符“$”引起的语法错误在PHP中,设置变量时需要使用变量标识符“$”,如果不添加变量标识符,就会引起解析错误。402常见的错误类型02语义错误语义错误是在语法正确的前提下出现的错误。PHP中的字符串连接符是“。”,而不是“+”。上述代码错误地使用了“+”作为字符串的连接符。但是由于PHP能够隐式转换变量类型,上述代码并不会导致编译器出错,只是不会输出正确的结果。02常见的错误类型03逻辑错误逻辑错误是指在程序中使用的逻辑与实际需要的逻辑不符。逻辑错误对PHP编译器来说并不算错误,但是由于代码中存在逻辑问题,导致运行后没有得到期望的结果。逻辑错误在语法上是不存在错误的,但从程序的功能上看是有缺陷的,这种缺陷难以调试和发现,因为它们不会抛出任何错误信息,唯一能看到的就是程序的功能(或部分功能)没有实现。02常见的错误类型04运行错误常见的运行错误如下。①调用不存在的文件。②调用不存在的函数。③读写文件错误。④运算的错误。03错误处理机制03错误处理机制01控制错误显示及显示方式在php.ini文件中可以控制错误是否显示,以及以何种方式显示。具体配置选项的名称、默认值和表述的含义,如表14-1所示。03错误处理机制02控制错误级别常见的错误级别如表14-2所示。04常用程序调试方法04常用程序调试方法01用die语句进行调试应用die语句调试程序是一种不错的选择,不但可以查找出错误的位置,而且可以输出错误信息。使用die语句进行程序调试时,查询出错误后会终止程序的运行,并在浏览器上显示出错前的信息和错误信息。该语句经常用在MySQL数据库服务器的连接中。如果使用die语句,就可以知道是否已经与数据库建立了连接;如果不使用die语句,就看不到错误的存在,程序会继续执行下去。04常用程序调试方法02用mysq_error()函数输出SQL语句的错误在执行MySQL语句时产生错误是很难发现的,在PHP脚本中执行一个MySQL的添加、查询、删除语句时,如果是MySQL语句本身的错误,程序不会输出任何信息,除非对MySQL语句的执行进行判断,成功输出什么,失败输出什么。为了查找出MySQL语句执行中的错误,可以通过mysql_error()函数对SQL语句进行判断,若存在错误,则返回错误信息,否则没有输出。该语句应放置于mysql_query()函数后。04常用程序调试方法03用try-catch语句抛出并捕获异常异常处理可以通过try-catch语句实现,使用时需注意以下几点。①如果try语句块未抛出任何异常,try语句块将运行完毕,catch语句块的内容不会被执行。②如果try语句块抛出了异常,程序会立刻在catch语句块中寻找可以捕获该异常的语句块,并运行相应的catch语句块代码,然后跳出try-catch语句块继续运行。③如果try语句块中的异常不能被catch语句块捕获,异常将会向上层(如果有)抛出,或者程序终止运行。④在catch语句块中,异常类型后跟的是一个变量,这个变量将指向被捕获的异常实例对象。05错误处理技巧05错误处理技巧01用“@”隐藏错误PHP提供了一种隐藏错误的方法,即在要被调用的函数名前加上“@”来隐藏可能由于这个函数导致的错误信息。例如,在应用fopen()函数打开文件时,如果出现文件不存在或不可用等错误,PHP会输出一条警告信息。关键代码如下:05错误处理技巧02自定义错误信息在PHP中,使用错误隐藏的方法处理错误会令访问者很迷惑。因为访问者无法知道当前页面的状态,所以往往需要在隐藏错误信息的同时定义错误信息。定义错误信息通常使用if语句来完成,用于判断当没有错误时执行什么内容,当出现错误时执行什么内容。定义错误信息
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新课标一年级数学下册复习计划
- 九年级英语复习计划指导
- 小学英语教学计划模板
- 2024幼儿园托班个人计划
- 七年级的地理下册教学计划
- 公司销售个人工作计划范例
- 临沂大学《量子力学专题分析》2021-2022学年第一学期期末试卷
- 聊城大学《软件设计与体系结构》2023-2024学年第一学期期末试卷
- 学校食堂从业人员培训计划
- 2024年学校管理部年度工作计划
- 2024年度工程咨询三人合伙协议书3篇
- 屋面板的拆除与更换施工方案
- 生命不是游戏拒绝死亡挑战主题班会
- 新教科版小学1-6年级科学需做实验目录
- 保健艾灸师职业技能竞赛理论考试题库及答案
- 大数据开发工程师招聘笔试题及解答(某世界500强集团)2025年
- 2024年新人教版七年级数学上册教学课件 第六章 几何图形初步 6.1.2 点、线、面、体
- 2024年军队文职统一考试《专业科目》管理学试卷(网友回忆版)含解析
- GB/T 44456-2024电子竞技场馆运营服务规范
- 山东省水利水电工程施工企业安全生产管理人员(C类)考试题库(含答案)
- 2023年劳动合同法全文 劳动合同法完整版
评论
0/150
提交评论