php_stream_copy_to_mem

php_stream_copy_to_mem --  ストリームから確保されたバッファにデータをコピーする

説明

size_t php_stream_copy_to_mem ( php_stream * src, char ** buf, size_t maxlen, int persistent )

php_stream_copy_to_mem()maxlen+1 バイトのバッファを pemalloc() (パラメータ persistent はそのまま渡されます) を使ってバッファを確保したのち、最大 maxlen バイトを src から読み込んで、その内容を確保されたバッファに 格納します。

確保されたバッファを buf で示されたポインタに 返したのち、正常に読み込めたバイト数を返します。 呼び出し下は、返されたバッファを、同じ persistent パラメータとともに pefree() で開放する必要があります。

src ストリームにある残りの(内部位置移行にある) データすべてをコピーしたい場合は、 定数 PHP_STREAM_COPY_ALL を、 maxlen に指定してください。

注意: この関数は、データを、メモリマップができればそれを使い、 最大限効率的な方法でコピーを行おうとします。