标签: PHP
编程

PHP 8:数组、变量、操作符、异常处理

1494 2023-06-14 22:38:00

本篇介绍几个新特性以及与数组、变量、运算符、异常处理和 trait 等有关的改进。数组与字符串弃用 false 值的 Autovivification.Autovivification是指当引用数组中未定义的元素时自动创建新数组,例如:?php $arr['a'][1] = 'a'; var_dump($arr);新数组$arr是自动创建出来的,它在被...

详情...
编程

Pest 架构测试插件

1490 2023-05-14 23:06:00

随着 PestPHP v2 的发布,现在我们可以测试应用的架构了。本教程将介绍如何使用这一插件。首先在应用的 tests/Feature 目录下创建一个 ArchTest.php 文件。从这里开始,我们可以开始记录我们的架构需求和规则,使我们能够用出色的API和出色的开发体验来测试这些需求和规则。我推荐你添加的一个测试,确保应用中不会留下debug的调用。t...

详情...
编程

Laravel 9 CORS 示例:如何在 Laravel 中启用 CORS

1875 2023-05-13 12:31:00

您不能在两个服务器或两个域名之间共享资源吗?好吧,如果你对此感到困惑,那么我们有一个解决方案。本教程将介绍如何在 Laravel 中快速启用 CORS(Cross-Origin Resource Sharing,跨域资源共享)。你可以安装并配置CORS,以消除 CORS header ‘access-control-allow-origin’ 缺失问题。通常...

详情...
编程

引入 PHP-CS-Fixer 到老项目中

1414 2023-05-05 02:48:00

您正在处理一个遗留的 PHP 项目,并希望使用 friendsofphp/php-cs-fixer 来强制执行一致的编码标准。但你不确定如何在不造成问题的情况下做到这一点。在您的遗留PHP中引入PHP CS Fixer以降低风险并邀请其他开发人员进行合作,应该采取什么样的策略?要求如果你想在你的遗留PHP项目中成功地引入 PHP CS Fixer,你将有以下要求:...

详情...
编程

Symfony VarDumper 组件打印变量

1744 2023-05-03 19:58:00

说到调试,Symfony 的 VarDumper 组件带来了革命性变化。它让我们可以用一种简洁高效的方式打印变量。如果你的项目中还没有用到,应该去试一试。本文我们将一起看看怎么样用它来打印对象,使之更具可读性。问题在一个使用Strip...

详情...
编程

探索 PHP 的 First-class callable 语法

1604 2023-05-02 10:29:00

查看 Laravel 框架最新的更新时,我发现了一些以前没看到过的语法。

详情...
编程

让代码更具可读性小技巧

1272 2023-05-02 09:03:00

你是否维护过他人的项目?一个让你一打开就不寒而栗的项目?即使还未细读代码,你已经知道它一团糟了。可能你也找不出具体问题,不过这些代码就是看起来就很怪异,感觉哪里不对。编写整洁的代码;让你可以在写完一两年后回看还是能感觉修改起来很舒适的代码,是个艺术。这绝对是一个主观的话题——别误会我的意思;但“编写可读的PHP”有很多部分是可以掌握的。首先我们要提的是,一个...

详情...
编程

如何解决 Laravel 队列 "ModelNotFoundException" 问题

1416 2023-04-30 07:06:00

Laravel 因为没有找到相关模型而导致队列任务失败,该怎么办?让我们一起看看队列任务中的 ModelNotFoundExpection 异常有哪些处理方法。Illuminate\Database\Eloquent\ModelNotFoundException: No query results for model [App\Models\User]这是一...

详情...
编程

现代 PHP:使用 Sodium 扩展对数据进行加密/解密

4193 2023-04-27 00:32:00

多年来,PHP 增加了对几个扩展、库和算法的支持,以加密和解密数据。伴随着几个具有不同维护级别的库和扩展,每个算法都可能有优缺点,有些算法甚至天生不安全,因此很难选择合适的PHP扩展、库和加密结构,并平衡安全性和性能。mcrypt是为PHP带来加密/解密功能的最古老的PHP扩展之一。它不再被维护,并且在PHP 7.2中PHP将它解除了捆绑。OpenSSL...

详情...
编程

在 PHP 中使用 Curl 压缩 HTTP 请求

2015 2023-04-26 22:13:00

压缩是提升网页性能的一个重要且有效的手段。对于文本资源如 HTML 文件、CSS/JS 文件、SVG 文件等,传输之前在服务器上对资源进行压缩,并在浏览器中解压缩可以极大减少带宽及传输时间。对服务器和浏览器来说,压缩过程是不太透明的,服务器在发送给浏览器器前对资源进行压缩,浏览器在渲染之前进行解压缩。服务端软件和前端开发者不需要处理压缩/解压缩过程。近年来开发出...

详情...