你一定想不到, 2025年了, 我竟然开始写php了

年初我的两个想法

在2025年, 我爱上了 Laravel! - #掘金沸点#

laravel + filament太优雅了, 感觉自己像个土狗#网页链接# - #掘金沸点#

之后, 我终于开始写php了,

首先要面对的问题就是断点调试, 这里还真有一点点小复杂, 首先说明 Jetbrains 的 文档 https://www.jetbrains.com/help/phpstorm/2022.2/configuring-xdebug.html 还是比较准确的, 下面我说几个比较容易忽略的点

  1. 使用 phpinfo() 获取到你当前的版本输出, 然后粘贴到 这里 , 就能给你适配的 xdebug.dll 下载, 还挺人性化的...

因为读取你的输出了, 所以精准的定位到你的 php.ini 位置, 下载dll 并且放入ext目录中 特别强调你要重启你的 http server, 如果你是使用phpstorm 加载的这个页面, 最好重启下phpstorm, 我一开始这里都发现了调试器了, 但是phpinfo() 一直没有输出让我郁闷很久

然后在能断点调试之前还有一个很重要的内容是

xdebug.mode 这个值也接受 develop/trace, 但是只有 debug 能触发断点,

  1. 请求分为两种, 一个是浏览器这样的访问应用, 这里需要一个 Xdebug Helper 这个扩展, 原作者因为协议问题被停用了, jetbrains 又维护了一个, 这个直接在 chrome store 里搜索安装即可

另一种就是 cli, 即终端调试脚本等

bash 复制代码
php scripts/main.php

这种, 需要先设置一个环境变量

这些前置工作都准备好之后就是在 phpstorm 中调试了,

首先要点击 phpstorm 的这个监听按钮

然后点击php的行首增加一个断点, 这时刷新页面, phpstorm 可能会先弹出是否接受请求的弹窗, 点击接受后, 代码执行到这里就可以看相关变量等信息了, 十分方便.

总结:

按照文档操作, 并不复杂, 但是因为涉及到的修改项比较多, 其中一个没执行到, 便无法达到预期, 所以写下这篇文章记录一下.

相关推荐
程序员爱钓鱼1 分钟前
Go语言泛型-泛型约束与实践
前端·后端·go
寻月隐君2 分钟前
保姆级教程:Zsh + Oh My Zsh 终极配置,让你的 Ubuntu 终端效率倍增
linux·后端·命令行
程序员爱钓鱼4 分钟前
Go语言泛型-泛型对代码结构的优化
后端·google·go
这里有鱼汤9 分钟前
“对象”?对象你个头!——Python世界观彻底崩塌的一天
后端·python
RainbowSea11 分钟前
跨域问题(Allow CORS)解决(3 种方法)
java·spring boot·后端
sniper_fandc2 小时前
SpringBoot系列—入门
java·spring boot·后端
SuperherRo5 小时前
WEB攻防-文件包含&LFI&RFI&伪协议编码算法&无文件利用&黑白盒
php·文件包含·伪协议·lfi·无文件·黑白盒·rfi
Piper蛋窝8 小时前
深入 Go 语言垃圾回收:从原理到内建类型 Slice、Map 的陷阱以及为何需要 strings.Builder
后端·go
六毛的毛11 小时前
Springboot开发常见注解一览
java·spring boot·后端
AntBlack11 小时前
拖了五个月 ,不当韭菜体验版算是正式发布了
前端·后端·python