没有不值得去解决的问题,也没有不值得去学习的技术!

年度归档: 2022 年

  • 在 Laravel 6 中,当访问不存在的网址时,期望响应 404 却实际返回了 500。排查发现,删除数据库中自定义页面的数据后触发报错,原因在于自定义 404 视图文件继承了基础布局模板,而该模板中部分变量在错误场景下未定义。通过在报错行变量前添加错误控制运算符 @,解决了变量未定义的问题,最终使系统能够正常返回 404 响应。

  • 在 PHP 7.4 中遇到 Array to string conversion 报错,经查看报错文件代码发现是因为使用 echo 输出数组导致类型转换失败。通过将输出方式修改为按照数组格式打印该变量,解决了因强制将数组转换为字符串而引发的报错问题,使程序正常运行。

  • 本文介绍在 Sentry 中筛选并解决分配给自己的未解决问题的操作流程。首先在问题列表的搜索框中输入特定命令以查找未解决且分配给自己的条目,回车后查看搜索结果。接着选中具体问题,点击 Resolve 按钮进行标记。按钮随后变为勾选状态,表明该问题已成功解决。

  • 针对PHP 7.4中基于语义化版本的目录名称排序需求,文章解决了v2.0.0小于v2.0.0-h.1的非标准比较问题。在使用version_compare函数无法得到预期结果的情况下,文章提出了一种自定义比较逻辑:当两个版本号主部分相同且仅其中一个包含-h后缀时,判定含后缀的版本更大。最终代码实现成功将目录按预期顺序排列。

  • 本文针对Laravel 6中任务队列一直处于运行状态的问题进行了排查分析。在解决了因Artisan::call未返回导致的判断失效问题后,再次遇到相同情况,日志显示PHP Fatal error,提示settingUrl()函数重复定义。经分析,这是由于include包含的文件中存在重名函数所致。最终采取的临时解决方案是将重名函数修改为不同名称,从而规避了该致命错误。

  • 本文探讨了在 Laravel 6 中重构 MySQL 字段类型 json 值的方法。针对现有代码中生成的 setting_migrations 数组结构,文章介绍了如何基于辅助函数 Arr 将该字段值调整并纳入到新的 extra 字段中。通过具体的代码调整,最终将原有的数组结构转换成了以 extra 为字段名的对象结构,实现了数据存储格式的优化。

  • 在 Linux 和 Laravel 6 环境中排查任务队列一直处于运行中的问题。通过日志分析和手动复现,发现根源在于被调用的命令执行失败时使用了 exit(1),导致未抛出异常而使队列无法感知失败。将 exit(1) 改为 return 1 后,进一步优化了调用处代码,通过获取命令输出来定位具体失败原因。最终修复确保了命令异常时能被队列正确捕获。

  • 文章探讨了在 PHP 中调整正则表达式以允许特定捕获子组为空的问题。针对现有代码无法匹配 internal://all_collectionss/ 的情况,通过分析元字符与量词的区别,将原本代表 1 次或多次匹配的 + 调整为代表 0 次或多次匹配的 *,成功实现了对结尾斜杠后为空及非空两种情况的支持,最终给出了调整后的正则规则与代码实现。

  • 文章记录了在 MySQL json 字段中设置值时遭遇 Unsupported operand types 报错的排查过程。通过调整代码逻辑,实现了在 json 字段已有值的情况下追加新数据的功能。文中展示了首次执行与再次执行后字段的最终变化,验证了数据追加成功的问题修复结果。

  • 针对PHP 7.4中基于语义化版本命名的目录,文章解决了按版本号从低到高逐一执行脚本文件的问题。通过使用glob()获取子目录列表,利用usort()和version_compare()函数对目录进行规范化排序,确保了执行顺序正确。文章还介绍了在版本升级场景下,通过过滤和排序来精确获取需要执行的增量目录列表,最终实现了对特定版本范围内目录脚本的按序执行。

👨‍💻 个人品牌

王世强|技术实践者 · 独立博客作者

15+ 年 Web 与系统实践经验,持续关注网站基础设施、系统优化、AI 工具与自动化。

持续运营技术博客 10+ 年,累计发布 1000+ 篇原创技术文章。

长期建设个人项目,也欢迎合适的技术交流、咨询与合作。

👉 关于我

.env (14) add (16) AI 翻译 (31) Array (19) A Tour of Go (73) CDN 缓存 (13) CentOS (23) ChatGPT (21) ChatGPT Plus (15) chrome (19) Cloudflare (38) Codex (23) composer (42) composer.json (22) composer update (14) console (16) Container (25) curl (16) delete (31) Docker (32) Dockerfile (15) EdgeOne (34) environment variable (19) error (24) file (15) filter (20) Git (28) GitHub (23) Gitlab (15) GLM-5.2 (27) Go (65) go-tour-i18n (16) Google AdSense (30) Go 语言 (24) Go语言 (13) GraphQL (24) GraphQL API (14) Gutenberg (36) http (21) https (22) Interface (19) json (24) Laravel (37) Laravel 6 (55) Laravel 9 (25) Lighthouse (17) Lighthouse 5 (14) Linux (22) Module (17) MySQL (78) MySQL 5.7 (22) Nginx (63) normalize.css (28) OKX (15) OneinStack (21) PHP (67) php-fpm (19) php.ini (24) PHP 7.1.12 (22) PHP 7.4 (26) phpmyadmin (15) PhpStorm (24) Polylang (58) postman (18) Query (17) queue (16) Rancher (24) Redis (51) RESTful (27) RESTful API (23) Shopify (19) SlyTranslate (21) SQL (24) String (14) TortoiseGit (14) Twenty Twenty-Five (20) Ubuntu (41) update (20) VPN (17) W3 Total Cache (40) Windows 10 (46) WireGuard (28) WordPress (135) WordPress 多语言 (13) WPCode (23) Wstunnel (15) Yii (40) Yii 2 (70) Yii 2.0 (51) ZgoCloud (13) 国际化 (14) 多语言网站 (13) 多语言翻译 (38) 开源项目 (14) 技术博客 (15) 故障排查 (15) 数据库迁移 (16) 浏览器 (14) 阿里云 (20) 页面缓存 (14)

2026 年 9 月
 123456
78910111213
14151617181920
21222324252627
282930