你一定想不到, 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 可能会先弹出是否接受请求的弹窗, 点击接受后, 代码执行到这里就可以看相关变量等信息了, 十分方便.

总结:

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

相关推荐
考虑考虑5 小时前
docker compose V2版本新属性
运维·后端·自动化运维
GreenTea7 小时前
7000 万 QPS、500 PB:OpenAI 如何用一个 Python 存储平台撑住 10 亿用户
后端·架构
Flynt7 小时前
Java 27 升级实测:默认值动得比新特性多,有个老参数会让 JVM 直接起不来
java·jvm·后端
Bs_MoneyMagnet7 小时前
基于springboot+vue的个人健康管理系统的设计与实现 源码+文档
java·vue.js·spring boot·后端·vue3·springboot3·计算机毕业设计
GreenTea7 小时前
OpenAI Agents API 上手实测:一次调用把整个 agent loop 甩给 OpenAI
前端·后端·算法
Bs_MoneyMagnet10 小时前
基于springboot+vue的心理咨询预约与随访平台的设计与实现 源码+文档
vue.js·spring boot·后端·spring·毕业设计·旅游·计算机毕业设计
IT_陈寒11 小时前
Vue的响应式更新把我坑惨了,原来问题出在这
前端·人工智能·后端
陌シ未央ゞ11 小时前
基于BM25算法和RRF实现的混合索引(java版)
人工智能·spring boot·后端·算法
第五页的你11 小时前
SpringBoot基础设施配置(Redis序列化,JJWT新版)
后端
吃饱了得干活11 小时前
RabbitMQ 原理解析(下):存储、集群与可靠投递
后端·rabbitmq