Loading article…
バイナリセーフ関数とは、入力を生のバイトストリームとして扱い、そのテキスト要素をすべて無視する関数です。この用語は主にPHPプログラミング言語で、テキストや文字列の操作を主な役割とする関数にバイナリデータを渡すときに期待される動作を説明するために使用され、公式PHPドキュメントでも広く使用されています。[1]
バイナリセーフなファイルの読み取りと書き込み
すべてのテキスト データはバイナリ形式で表現できますが、文字エンコードを通じて表現する必要があります。さらに、改行の表現方法は、使用するプラットフォームによって異なる場合があります。Windows、Linux、macOS はすべて、バイナリ形式での改行の表現が異なります。つまり、ファイルをバイナリ データとして読み取り、テキストとして解析してからディスクに書き戻す (つまり、バイナリ形式に戻す) と、元のバイナリ表現とは異なるバイナリ表現になる可能性があります。
ほとんどのプログラミング言語では、ファイルの内容をテキストとして解析するか、バイナリ データとして読み取るかをプログラマーが決定できます。この意図を伝えるために、ファイルをディスクに読み取ったり書き込んだりするときに、特別なフラグやさまざまな関数が存在します。たとえば、PHP、C、C++ プログラミング言語では、開発者はテキスト データをそのように解釈するのではなく、fopen($filename, "rb")代わりにを使ってfopen($filename, "r")ファイルをバイナリ ストリームとして読み取る必要があります。これは、「バイナリ セーフ」モードでの読み取りとも呼ばれます。
参考文献
- ^ 「PHP: dirname - マニュアル」。it.php.net 。 2017年2月21日閲覧。
