此包已被废弃,不再维护。没有建议的替代包。

一个健康的PHP库

0.21.1 2016-05-16 17:06 UTC

README

Build Status

在开发和帮助他人开发PHP应用程序的过程中,我发现几乎每个任务都会用到PHP的数组。PHP中的数组很有用,但由于PHP没有丰富的标准库来处理常见的数据结构和算法,因此被过度使用。这个库旨在填补这一空白。毫无疑问,我在设计和实现中犯了一些错误;希望更多的社区参与可以帮助识别和修复这些错误。

需求

耐心

此项目不稳定,版本之间可能会发生重大变化。在这一开发阶段,稳定性不是目标。明确地说:您正在自行承担风险使用此项目。我非常重视您使用此库的经验,并对早期使用者表示感谢,但我想强调,此项目非常不稳定。

PHP 5.4

此项目需要 PHP 5.4,因为PHP 5.3已经到达生命周期的结束(EOL)。因此,该项目使用了特性(Traits)、可调用类型和短数组语法。根据此项目成熟的时间长短,可能需要PHP 5.5来处理生成器和改进foreach循环中对非标量键的处理,或者可能需要PHP 5.6来支持...

您还可以使用HHVM。我不会让HHVM的兼容性阻止我做我认为对这个库正确的事情,但希望我们能够保持兼容性。

路线图

此项目没有官方路线图。我打算在我对API有足够的信心,认为它适合公共使用时发布1.0.0版本。在此之前,将根据需要标记次要版本。此项目遵循语义版本控制

我如何帮助?

最好的帮助方式是使用此库(再次提醒,您在使用时承担风险)并在发现问题时提交问题。超过99%的库已通过单元测试执行,但其中一些测试的质量较差;欢迎改进测试。

您能添加X结构吗?

也许可以。打开一个问题,我会查看。

为什么不使用现有的标准PHP库?

标准PHP库(SPL)有许多问题,其中一些在关于SPL的未完成的RFC中有所记录。在这里我不想详细说明,但本质上SPL没有提供我认为PHP社区需要的标准数据结构和算法。

这个名字有什么含义?

这个项目最初的目标是修复SPL;因此我将其命名为SPL。最终我意识到,如果用不同的名字可能会更好;我选择了Ardent,这个名字描述了我对这种库的需求的感受。不幸的是,在我已经选择这个名字之后,另一个PHP项目决定使用这个名字。