PHP5引入了面向对象的文件包装器SplFileObject.我想我刚刚发现为什么几乎没有人使用它.它纯粹是面向行的,没有fread()方法 - 相应的frwite似乎暗示了这一点.
所以现在我想知道我是否可以扩展它.但我不确定什么是更好的解决方法.将文件指针($ fp)折叠起来时,SplFileObject并不是特别有用 - 它可以是私有属性,也可以是ZE内部资源.那么我如何扩展它以获得一个fread方法呢?
我会选择fgets解决方案循环,但听起来既麻烦又缓慢,并提供更多潜在的陷阱.OTOH打开辅助文件指针似乎也不是一个好方法,也需要自定义析构函数.