标签: PHP
编程

使用 PHP Sodium 扩展进行 AEGIS 加密

806 2024-01-02 22:26:00

AEGIS 是 基于 AES 的认证加密算法家族,其速度明显快于普遍存在的算法,如 AES-GCM 和 CHACHA20-POLY1305 。如果扩展是使用libsodium 1.0.19或更高版本编译的,则 PHP 8.4 中的 Sodium 扩展支持 AEGIS-128L 和 AEGIS-256 加密算法。AEGIS 家族中的两种加密算法 A...

详情...
编程

Laravel 中的 PHP 注解 attributes

1229 2023-12-28 04:00:00

Attributes 提供了在代码的声明中添加结构化、机器可读的元数据信息的能力:类、方法、函数、参数、属性和类常量可以是属性的目标。我相信这个定义是正确的,我相信阅读本文的大多数开发人员都至少遇到过一次 attributes 。如果没有,它们本质上是添加到类中的元数据。

详情...
编程

Laravel Octane 现已支持 FrankenPHP

1630 2023-12-27 02:26:00

Laravel Octane 通过使用高性能服务器比如 Open Swoole、Swoole 和 RoadRunner 来提高应用的性能。2023 年 12 月 19 日起,它也开始支持 FrankenPHP。

详情...
编程

FrankenPHP v1.0 发布

857 2023-12-23 01:05:00

FrankenPHP 本周刚刚达成了一个重要的里程碑,发布了 v1.0 版本。FrankenPHP 是一个用 Go 编写的现代 PHP 应用程序服务器,只需一个命令就可以为您提供一个生产级 PHP 服务器。它提供了对 Symphony, Laravel, WordPress 等的原生支持:生产级 PHP 服务器,由 Caddy 驱动部署简单——将 PHP 应...

详情...
编程

在 PHP 中使用匿名类测试抽象类

754 2023-12-20 22:14:00

抽象类不能直接实例化,这为测试抽象类本身实现的功能时带来了挑战。在这篇文章中,我将分享我解决这一问题的方法。为了说明该技术,让我们假设有一个带有 move() 方法的抽象类 Vehicle,同时在其子类中强制实现 speed() 方法。/app/Utils/Vehicle.phpnamespace App\Utils; use Exception; ab...

详情...
编程

Stressless: PHP 压力测试

829 2023-12-19 22:11:00

PestPHP 发布了一个全新的插件:Stressless。这是 Pest PHP 家族的一个新成员,它为 PHP 生态系统带来了压力测试的能力。它与 Pest PHP 无缝集成,将压力测试的强大功能与 Pest 的 Expected API 的简洁和优雅相结合。正如你所看到的,开始使用 Stressless 是毫不费力的——你所需要做的就是使用 Compo...

详情...
编程

PHP 8.3: Assert: assert_options()、ASSERT_* 常量 及 assert.* INI 设置弃用

960 2023-12-19 19:54:00

PHP 8.3 弃用了所有 assert.* INI 指令,ASSET_* 常量及 assert_options() 函数。PHP 的 assert() 函数允许定义期望值,该期望值提供“抽查”来断言应用状态。它们可以在开发或测试环境中启用,但当禁用时(例如在生产系统中),这些断言在执行时成本为零。assert(!str_contains($db_name,...

详情...
编程

PHP 8.3: SQLite3: 新增 \SQLite3Exception、弃用和修改

1267 2023-12-18 17:23:00

PHP 8.3 中的 SQLite 扩展改进了该扩展的错误处理,以鼓励使用 Exceptions,并阻止 PHP 警告的现有行为。SQLite3 扩展当前默认的错误处理方式是发出 PHP 警告。这在 PHP 8.3 中没有改变,PHP 8.3 和其他 PHP 8.x 版本继续在错误时发出 PHP 警告。SQLite3 扩展提供了一个 SQLite3::ena...

详情...
编程

Laravel Volt 实时状态

1217 2023-12-16 17:42:00

我们来创建一个 Volt 组件,用它来显示实时用户数量。概念要实现该特性,我们需要一个方法来跟踪活跃用户。一个方法是,将活跃用户以日志记入数据库表格。每个条目包含用户 ID 以及何时激活的时间戳。然后,您可以检查最后 5 分钟内或任何其他所需时间段内的活动。另一种方法是在 users 表中添加一个 “last_login_at” 字段。第三种可能性是使用 w...

详情...
编程

PHP 8.4 预览: 密码哈希:默认 Bcrypt 成本从 10 改为 12

888 2023-12-13 16:43:00

PHP 8.4 修改了 PHP 内置密码哈希 API 的 cost 参数。PHP 提供了 password_hash、password_verify 和 password_needs_rehash (还有两个附加函数,用于获取支持的算法列表并从哈希中获取信息) 函数以安全散列密码的函数。密码哈希算法及其参数是可配置的,并且算法和参数存储在密码散列本身中,因此...

详情...