您现在的位置是:群英 > 开发技术 > PHP语言
PHP如何调试代码?常用的调试方法有哪些?
Admin发表于 2021-11-12 16:06:571845 次浏览

    这篇文章给大家分享的是PHP如何调试代码的内容,代码调试是一个程序员必须要掌握的,因此本文分享几种常用的调试方法给大家做个参考,对新手学习和了解代码调试有一定的帮助,文中示例代码介绍的非常详细,感兴趣的朋友接下来一起跟随小编看看吧。

    小编个人理解,调试分三种,注意我所讲的是调试并非测试

  • 功能调试
  • 组件调试
  • 片段调试

    功能调试是指在完成一个功能或者正在完成功能的过程中进行的错误、逻辑、结果的测试

    组件调试是指将一个正在开发测试的插件、类进行错误、逻辑和结果的测试

    片段调试是指将一段代码片段、函数、变量的预期和结果的测试

    接下来我们看下本章列出的一些调试方法

    暴力调试

    这种方式简单粗暴,一般PHP程序员都会用,那就是浏览器调试,在编辑器内写完代码后随后打开万能的浏览器输入地址开始调试代码。

    断点调试

    说实在的,这种方式如果仅仅是看看输出结果,完全没必要,看似高大上实际浪费时间经历,一般我都会在代码块写好之后跑一遍debug,检查一下流程和结果是否在我的预期内或者遇到了某些逻辑问题无法察觉,还是选择断点调试比较靠谱,省时省力。最厉害的程序员也有懵逼的一刻不是吗?

    命令调试

    如果你在官网或者github上下载了一段代码片段,急于调试但还不愿意将代码片段放入项目中或者新开辟一个目录,完全可以使用php命令去执行这个代码块

php -f filename.php

    如果代码片段较短,你可以使用

php -r "code ..."

    执行运行PHP代码

    片段调试

    当你突然想起一个方法或者算法急于去验证它,但又不愿意打开编辑器或者执行php自带的命令行的话。你可以选择使用psysh工具去执行验证你的想法,这个工具安装十分简单

Psy Shell v0.8.17 (PHP 7.1.14 ― cli) by Justin Hileman
New version is available (current: v0.8.17, latest: v0.9.6)
>>> date('Y-m-d H:i:s',time())
=> "2018-08-09 14:18:10"
>>>

    测试调试

    这是一个严肃的调试方法,很多程序员都认为功能模块、组件开发完就结束的任务,随后交给测试人员去测试就好了。其实并不然,有些隐藏的bug或者致命错误、逻辑错误、系统错误(例如开启了无用的线程,未使用的变量、方法、类等等)是无法被测试出来的。实际作为一名程序员,开发功能的流程是这样的。

理解需求 -> 分解需求 -> 整理逻辑 -> 设计代码 -> 敲代码 -> 调试 -> 测试

    如果最后一步你从来没有做过,那你只能是半个程序员。 测试我推荐使用PHPunit,更好的去理解自己的代码,才是一个合格的程序员。

    编辑器调试

    感觉讲这个有点废话了,如果你感觉打开命令行然后输入php xxxx特别费劲的话,你也可以选择使用编辑器自带的调试,一般像sublime,visual Studio Code , PHPStrom 都会自带的调试工具,其原理依旧是调用php -r但总比打开命令行输入命令要快的多。

    关于PHP代码调试的方法就介绍到这,上述几种方法有一定的参考价值,需要的朋友可以了解看看,想要了解更多代码调试的方法和技巧,大家可以关注其它的相关文章。

文本转载自脚本之家

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

标签: php代码调试
)
相关信息推荐
2022-05-11 17:58:32 
摘要:在JavaScript中,迭代器是一种设计模式,用于在容器对象上遍历,就是依次拿到其中的数据,js中的迭代器有一个next()方法,每次调用都会返回一个对象,语法为“next:function(){return{value,done}}”。
2022-05-14 16:12:47 
摘要:给大家带来一篇关于ThinkPHP3.2.3框架如何实现分页功能的相关教程文章,内容涉及到ThinkPHP3.2.3、分页、ThinkPHP3.2.3实现分页的方法详解等相关内容,更多关于ThinkPHP3.2.3实现分页的方法详解的内容希望能够帮助到大家。
2022-05-26 17:09:41 
摘要:本文实例为大家分享了js实现鼠标悬浮框效果的具体代码,供大家参考,具体内容如下<!doctype html><html lang="en"><head>    &l
云活动
推荐内容
热门关键词
热门信息
群英网络助力开启安全的云计算之旅
立即注册,领取新人大礼包
  • 联系我们
  • 24小时售后:4006784567
  • 24小时TEL :0668-2555666
  • 售前咨询TEL:400-678-4567

  • 官方微信

    官方微信
Copyright  ©  QY  Network  Company  Ltd. All  Rights  Reserved. 2003-2019  群英网络  版权所有   茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078   粤ICP备09006778号
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
微信公众号
返回顶部
返回顶部 返回顶部