PHP应该在所有面向对象的代码中使用SplFileObject


PHP should SplFileObject be used in all object orientated code

在php中写入文件时,在OOP风格的编码中是否应该使用SplFileObject?以及程序样式中使用的普通文件句柄。

或者,与代码样式相比,每种样式实际上都适合不同的用途吗?

Well SPLFileObject在处理二进制文件时用处不大,因此无论您的编码风格是过程式还是OOP,读取Excel工作簿或图像文件都没有多大用处。对于类似的东西,我将坚持使用PHP的标准文件函数。

它对于处理任何类型的文本文件都很有用,提供了许多有用的功能,使文件易于迭代(遗憾的是,它不能很好地处理prev和next),无论您的编码风格是过程化的还是OOP的,都值得使用。

因此,基本上,在最合适的时候使用它,并提供您需要的功能,而不仅仅是为了适应您的编码风格。

PHP中的所有SPL类都旨在提供额外的功能或易用性,而不是常规语言函数绑定所提供的功能。如果你想在OOP模型中严格遵守这一点,或者反之亦然,这是你个人的选择。

换句话说,我认为(这是我个人的观点)如果我当时适合我的目的,那么写OOP代码是完全可以的,我使用PHP中的array_*函数来处理我的数组,而不必依赖array_Object或迭代器。同样适用于任何其他SPL类。