标签: PHP
编程

PHP 随机数函数的随机性测试

1365 2024-04-18 18:00:15

随机数生成是一个生成无法合理预测的数字的过程。数字序列不应该是可预测的,它在依赖随机数序列的不可预测性的应用程序中发挥着重要作用。“真”随机数生成过程可以包括任何东西,从简单的掷硬币、掷骰子到宇宙辐射测量、大气压、熔岩灯,以及其他取决于几个自然发生的物理方面的物理手段,这使得在计算机上进行预测变得相当困难。大多数现代计算机操作系统试图提供一个接近的“真实”随...

详情...
编程

"Typed property must not be accessed before initialization" - 引入类型提示遇到的错误

1958 2024-04-16 16:56:00

在 PHP 中,当属性的定义使用了类型提示,而在显式赋值前访问该属性时,会碰到 "Typed property must not be accessed before initialization" 错误。通过为该属性提供默认值,或者在类的构造函数中初始化该属性,可以解决这一问题。

详情...
编程

PHP 中间件模式的工作原理及如何使用

1612 2024-04-16 03:48:00

在这篇文章中,我们将研究 PHP 中的中间件。这种模式在处理请求和响应时最为常见。但是中间件模式也可以应用于其他各种地方。我们将研究什么是中间件,中间件是如何工作的,中间件何时有用,以及中间件的替代方案是什么。注意: 中间件模式不是“Gang of Four”介绍的模式的一部分,但我个人仍然将其视为一种模式,因为它可以应用于各种情况。什么是中间件呢?PHP ...

详情...
编程

PHP 8.4: Curl: libcurl 最小版本需求增加到 7.61.0

1271 2024-04-15 01:20:00

Curl 扩展在 PHP 中公开了 libcurl 功能。虽然可以使用任何支持的 libcurl 版本编译 Curl 扩展,但该扩展需要特定的最低 libcurl 版本。这使得扩展更容易确保某些功能和 API 始终可用。在 PHP 8.4 之前,Curl 扩展要求 libcurl 版本在 7.29.0(2013 年发布)以上。而 PHP 8.4 及其之后的版...

详情...
编程

PHP 8.4: Curl: curl_version() 支持 feature_list

907 2024-04-14 20:29:00

Curl 扩展的 curl_version 函数返回包含 Curl 版本及编译信息的关联数组。包括 Curl 版本、SSL 库名及版本、Brotli 和 libz 版本、Curl 支持的协议列表以及 Curl 支持的所有特性的位掩码(bitmask)。功能的位掩码不便于发现,也不便于检查 Curl 中是否支持特定功能(如HTTP/2、HSTS等)。在 PHP...

详情...
编程

PHP 8.4: PCRE2 升级及正则表达式更改

1435 2024-04-07 01:04:00

PHP 正则表达式能力,以 preg_* 函数方式提供,其依赖于 PCRE(Perl 兼容的正则表达式)库。从 PHP 7.3 开始,PHP 开始使用 PCRE2。PHP 一直在缓慢地保持微小的 PCR E更新,如 2021 年的 PCRE2 10.39 和2022年的 PCRE2 10.40。然而,PCRE2 10.43 带来了一些重大变化,包括影响其支持...

详情...
编程

Zend 框架转移到 Laminas: 回顾

1189 2024-04-06 01:55:00

早在 2018 年 10 月,Rogue Wave Software 就宣布重组其 Zend 投资组合,包括 Zend Framework。Zend Framework 社区一时震惊,这是可以理解的,许多人对该框架的未来感到担忧。六个月后,即 2019 年 4 月,Roue Wave 宣布他们将把该项目作为 Laminas 项目移交给 Linux 基金会。在宣布这一...

详情...
编程

PHP 8.4: Date: 新增 DateTime(Immutable)::get/setMicroseconds 方法

1224 2024-04-03 20:46:00

PHP 8.4 及其此后的版本中, DateTime 和 DateTimeImmutable 类支持通过 getMicroseconds 和 setMicroseconds 方法获取和设置 DateTime/DateTimeImmutable 对象的秒数。虽然可以使用时间戳创建/更新 DateTime 和 DateTimeImmutable 对象...

详情...
编程

PHP 开发工具:提升开发体验

1209 2024-03-31 20:45:00

随着 Laravel、Symfony、CakePHP 等框架的出现,PHP 已经成为构建 web 应用的一种非常强大的语言。这些框架极大地改善了 PHP 生态系统中的开发人员体验。但是,仍然有一些工具可以开发人员有更好的体验。代码格式化程序、代码分析器、代码嗅探器等可以极大地改进您的工作流程,并可以帮助您编写更好的代码。在本文中,我将列出一些我认为可以让开发...

详情...
编程

“…”省略号运算符在 PHP 中的多种用法

1050 2024-03-30 19:35:00

随着 PHP 发展到现代版本,一个在不同地方被彻底使用的操作符是(…)操作符。在本文中,我将讨论这个运算符在 PHP 中的各种用例。变参函数及方法变参函数是接受可变数量参数的函数。这里的省略号运算符可以用来定义 PHP 中的可变函数。省略号运算符在此上下文中也称为 “rest” 运算符。例如,下面是一个变参函数。function sum(...$number...

详情...