标签: PHP
编程

Google Gemini 的 PHP 客户端 API

2206 2024-02-29 19:29:00

要求要完成快速指南,请确保你的开发环境满足以下需求:PHP 8.1+设置安装首先,通过 Composer 包管理器安装 Gemini:composer require google-gemini-php/client请确保允许 php-http/discovery composer 插件运行,或者如果你的项目还没有整合 PSR-18 客户端,请手动安装此客户...

详情...
编程

PHP 8.4: Opcache: INI 对 JIT 启用方式的更改

1860 2024-02-29 00:19:00

PHP 8.0 添加了 JIT 编译支持。默认禁用 JIT,并且有两个切换切换开关,opchache.jit 及 opcache.jit_buffer_size 用来控制 PHP 主要的功能模式以及 JIT 使用的缓冲大小(buffer size)。在 PHP 8.4 之前,其默认的 INI 配置值为:opcache.jit=tracing

详情...
编程

PHP 中的树和树遍历

1384 2024-02-20 20:48:00

我将在本文中介绍树结构。什么是树,如何使用以及何种情况下使用、请注意,这只是一个基本的介绍,而不是整个故事。我甚至可能在某个地方错了,如果你认为我搞错了:请在评论中告诉我,或者给我发私信。🌳 什么是树?要回答这个问题,我们首先要看一下图(Graph)。在图论中,图(Graph)是以某种方式相互关联的数据点(或节点 Node)的(视觉)结构。例如,这种关系可以...

详情...
编程

设计模式之访问者(Vistor)模式

1506 2024-02-19 22:18:00

访问者(Visitor)模式是一种行为模式,允许你将算法与它们的操作对象上分离。问题描述:假设你的团队开发了一款应用,它可以处理构造成一个巨大图形的地理信息。图中的每个节点可以代表一个复杂的实体,如城市,也可以代表更精细的东西,如工业、观光区等。如果节点所代表的真实对象之间存在道路,则这些节点与其他节点相连接。在底层中,每个节点类型...

详情...
编程

Repositories 及其真实意图

1200 2024-02-16 01:39:00

由于使用了 Repository 模式,你已经替换了多少次底层数据库实现?这就是为什么,在这篇博文中,我想进一步澄清这个完全被误解的软件设计模式,以及为什么反对使用它的第一个论点(上面的问题)实际上是微不足道的,几乎无关紧要。定义 Repository首先,让我们从定义 Repository 实际是什么开始。Repository 模式在 PoEAA 中定义如...

详情...
编程

PHP 8.4: Mbstring: 新增 mb_trim、mb_ltrim 和 mb_rtrim 函数

1209 2024-02-09 14:35:00

PHP 8.4 为现有的 trim、ltrim 和 rtrim 函数添加了等效的 mb_ 函数。trim/ltrim/rtrim 函数在字符串的开头和结尾都去掉空白字符。默认情况下,这会去掉空空格( )、制表符(\t)、LF(\n)、CR(\r)、NUL字节(\0)和垂直制表符(\v)字符。新的 mb_trim、mb_ltrim 和 mb_rtrim 函数支...

详情...
编程

PHP 8.4: Date: 新增 DateTime(immutable)::createFromTimestamp 方法

1259 2024-01-13 16:05:00

PHP 8.4 中的 DateTime 和 DateTimeImmutable 类有一个名为 createFromTimeStamp 的新方法,用于从给定的 UNIX 时间戳(作为整数或浮点数)创建实例。PHP 8.4 之前,从 UNIX 时间戳中创建 DateTime,必须使用 createFromFormat 创建,通过 U / U.u 格式、

详情...
编程

PHP 8.4 预览: Sodium: AEGIS-128L 和 AEGIS256 支持

1840 2024-01-03 22:57:00

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

详情...
编程

使用 PHP Sodium 扩展进行 AEGIS 加密

1284 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

1842 2023-12-28 04:00:00

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

详情...