PHP I/O流包装器

PHP I/O流包装器,php,Php,PHP是否有I/O流的包装机制,通常由I/O函数(如fwrite)上下文中的资源句柄表示 注意,我不是说类,它更像是一个文件系统包装器+URI映射器。或者我不知道我在说什么,它似乎是一个数据流和文件系统在单个类中的特殊实现。。。对我来说,很难想象这样做是否有效 我说的是一个处理简单I/O数据流的类,很像套接字;类似于: /**** Error Logger ****/ class ErrorStream implements IOStreamInterface { function w

PHP是否有I/O流的包装机制,通常由I/O函数(如
fwrite
)上下文中的资源句柄表示

注意,我不是说类,它更像是一个文件系统包装器+URI映射器。或者我不知道我在说什么,它似乎是一个数据流和文件系统在单个类中的特殊实现。。。对我来说,很难想象这样做是否有效

我说的是一个处理简单I/O数据流的类,很像套接字;类似于:

/**** Error Logger ****/

class ErrorStream implements IOStreamInterface {
    function write($bytestream){
        sendByteStreamToDatabase($bytestream);
    }
}
class ErrorLogger {
    function getStream(){
        return new ErrorStream();
    }
}

“很像套接字”-那么为什么不直接使用?@MagnusEriksson呢?因为我不想要一个INET或UNIX文件系统名称绑定的跨进程庞然大物,它需要大量的同步和上下文切换,只需要拖拽几个字节。另外,使用
fwrite
afaik不能像I/O流那样写入套接字,需要使用
socket\u write
。我需要一个透明的I/O句柄替换件。
/**** Application using Error Logger ***/

$stream=(new ErrorLogger())->getStream();
fwrite($stream,'I have an issue');