新手看PHP源码不踩坑:从入口到排错,一次讲明白

5小时前 (22:15:00)阅读1回复0
genmulu
genmulu
  • 管理员
  • 注册排名1
  • 经验值3465
  • 级别管理员
  • 主题693
  • 回复0
楼主

很多新手刚学PHP,看源码的时候一堆报错,要么语法错,要么连接不上数据库,今天把看PHP源码常见的坑和排错方法说一下,新手照着来,看源码不会再两眼一抹黑。

先看入口文件,顺藤摸瓜

拿到一个PHP源码,别一上来就从第一个文件开始看,先找index.php,从入口开始,看它引入了哪些文件,每个文件是做什么的,顺着调用链往下走。比如index.php里require了config.php,那config.php就是配置文件,先去看数据库连接、站点设置,再往下看逻辑。

很多新手打开源码就从第一个PHP文件开始读,读了半天不知道整个程序是干嘛的,就是因为没从入口开始顺流程。

常见报错:语法错误

最常见的是改完代码报syntax error,就是少了分号、括号不配对,或者中文符号写成英文的了。把PHP错误提示打开,报错信息会告诉你哪个文件第几行出错,直接跳过去看那一行,90%的语法错误一眼就能看出来。

很多新手喜欢把中文逗号、中文括号写进代码里,PHP不认这些符号,跑起来直接报错,写代码的时候一定要切到英文输入法。

常见报错:数据库连接失败

看PHP源码第一步,先看config.php里的数据库地址、账号、密码对不对,很多人下载源码忘了改自己的数据库配置,直接运行,提示"无法连接数据库",其实就是配置里的密码和服务器上的对不上。

数据库地址一般填localhost,端口默认3306,数据库账号和密码是你在宝塔里新建数据库的时候设的,别用root账号,单独给每个源码建一个数据库账号,安全。

常见报错:文件权限不对

PHP源码要写缓存、写上传目录,目录权限不对就会提示"failed to open stream: Permission denied",把需要写入的目录所有者改成www用户,权限设755,文件设644,就不会有权限问题了。

别直接把整个目录设成777,虽然能解决问题,但是不安全,被入侵了都不知道怎么回事。

调试技巧:输出变量看值

看不懂逻辑的时候,直接在代码里var_dump($变量);die();,把变量值打出来,看看到底传的是什么,比干看代码快多了。很多时候逻辑绕来绕去,打两个变量值,立刻就明白问题出在哪。

现在都有Xdebug,但是新手不用装那么复杂的调试工具,简单的输出足够用了。

看源码的顺序

新手别一上来就看大型框架的源码,先从简单的博客源码、留言板源码开始,几百行代码的那种,顺流程走一遍,搞懂PHP是怎么接收表单、存数据库、显示数据的,再看复杂的框架,就不会觉得难了。

本站源码来源于网络收集修改或者交换,甚至可能并非原创,如遇未经考证信息需持审慎态度。若有疑问,可联系本站处理。

本文地址:https://www.genmulu.cn/genmulu/19.html

0
回帖

新手看PHP源码不踩坑:从入口到排错,一次讲明白 期待您的回复!

取消
载入表情清单……
载入颜色清单……
插入网络图片

取消确定

图片上传中
编辑器信息
提示信息