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

总结:

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

相关推荐
Anastasiozzzz17 分钟前
对抗大文件上传---分片加多重Hash判重
服务器·后端·算法·哈希算法
Vivienne_ChenW20 分钟前
DDD领域模型在项目中的实战
java·开发语言·后端·设计模式
女王大人万岁33 分钟前
Go标准库 sync 详解
服务器·开发语言·后端·golang
qq_4112624235 分钟前
短时间串口发送网络端怎么接收不到
开发语言·php
小高Baby@41 分钟前
session、cookie、Jwt-token
开发语言·后端·golang
露天赏雪43 分钟前
JDK8 的入门避坑指南
java·服务器·windows·spring boot·后端·spring·性能优化
wxin_VXbishe1 小时前
springboot旅游信息管理系统-计算机毕业设计源码21675
java·c++·spring boot·python·spring·django·php
爬山算法1 小时前
Hibernate(86)如何在性能测试中使用Hibernate?
java·后端·hibernate
菜鸟小杰子1 小时前
Spring Boot集成asyncTool:复杂任务的优雅编排与高效执行(实战优化版)
java·spring boot·后端
rannn_1111 小时前
【苍穹外卖|Day3】公共字段自动填充、新增菜品功能、菜品分页查询功能、删除菜品功能、修改菜品功能、起售停售菜品
java·spring boot·后端·学习·项目