ストリームの使用方法は、ANSI stdio関数の使用と非常に似ています。 主な違いは、使用を開始するストリームを得る方法です。 多くの場合、ストリームのハンドルを得るために php_stream_open_wrapper()を使用します。 この関数の動作は、以下の例で示すようにfopenと非常によくにています。
以下の表にその他の一般的なANSI stdio関数と等価なストリーム関数を 示します。注記で除外されていない限り、関数の意味は同じです。
表 44-1. ANSI stdioと等価なストリームAPI関数
ANSI stdio関数 | PHP ストリーム関数 | 注意 |
---|---|---|
fopen | php_stream_open_wrapper | ストリームではパラメータが増えています |
fclose | php_stream_close | |
fgets | php_stream_gets | |
fread | php_stream_read | パラメータnmembの値を1と仮定すると、プロトタイプはread(2)により似ることになります |
fwrite | php_stream_write | パラメータnmembの値を1と仮定すると、プロトタイプはwrite(2)により似ることになります |
fseek | php_stream_seek | |
ftell | php_stream_tell | |
rewind | php_stream_rewind | |
feof | php_stream_eof | |
fgetc | php_stream_getc | |
fputc | php_stream_putc | |
fflush | php_stream_flush | |
puts | php_stream_puts | fputsではなく、putsと同じ意味 |
fstat | php_stream_stat | ストリームはより情報の多いstat構造体を有しています |