答えて
NULLは、私はあなたのユースケースを知っているが、この例を考慮していないASCII 0x00の
fwrite($fh,chr(0));
エスケープシーケンス\0
printf("\0");
fwrite($fh, chr(0));
//or
fwrite($fh, "\0");
//or
fwrite($fh, "\x0");
あるだろう:あなたは整数のファイル配列に書き込む必要があり、配列メンバのいくつかはNULLかもしれません。あなたは(1バイトである)\ 0としてNULL書き込み、整数は32ビット(4バイト)である:最初のアレイメンバー
AA 22 BB 44 00 51 27 AF 1A ...今
は、AA 22でありますBB 44では、2番目の値はNULLまたは00 51 27 AF(有効な整数値)です。 \ 0 \ 0 \ 0 \ 0をNULLとして使用した場合、問題は解決されません。これは再び有効な整数値なのでです。
私の意見では、シリアル化を使用した方が良いでしょう。
数値をバイナリとして書くことに問題がある場合、pack()を使用する必要があります。http://uk3.php.net/manual/en/function.pack.phpドキュメントの「注意」に注意してください –
私はpack()がこの特定の場合に役立つとは思わない。 pack()は固定フォーマットが必要ですが、この場合はありません。あなたは32ビット整数でNULLを表現することはできません。この問題がどのように解決されているかに注目してください。 MySQLで。 32ビット整数は実際には33ビットであり、最後のビットはNULL値を表すために使用されます。したがって、pack()では似たようなことが必要ですが、serialize()ではそうではありません。出力サイズが重要な場合にのみ、pack()が優れています。 – Tomik
- 1. ASCII NULL文字
- 2. 削除のNULL文字列::
- 3. XmlTextWriterとnull文字列
- 4. Java文字列hashCode null string
- 5. Delphi - NULL終端文字
- 6. null終端文字ポインタ
- 7. 文字列内のhtml文字エンティティを置換する
- 8. フランス語の文字をhtmlのエンティティ
- 9. Silverlight 2とXMLの文字エンティティ
- 10. django nullと空の文字列
- 11. 空の文字列は、NOT NULL
- 12. C++の文字列とnullバイト
- 13. Cの文字列がNULLになる
- 14. 文字列からNULL文字を削除する方法
- 15. Perl NULLで終了する文字列
- 16. nullを文字列に変換する
- 17. 文字列メソッドがnullを返す
- 18. null値を持つ文字列コンストラクタ
- 19. null文字列を空の文字列に変換する方法
- 20. Null文字(\ 0)をJavaの文字列から削除するには
- 21. null文字は文字列の最後に2回追加されます
- 22. Nablaの特殊文字はNull文字で表示されます
- 23. C++でNULL文字を文字列の中に埋め込む方法は?
- 24. PHP:htmlエンティティでエンコードされた大文字を小文字に変換する
- 25. orgモードでのマークダウンと文字エンティティの問題へのエクスポート
- 26. NinjectMvc3とのエンティティ接続文字列の設定
- 27. XmlTextReaderの文字エンティティの展開をオーバーライドする方法は?
- 28. linqからエンティティへのデータベース接続文字列の変更
- 29. 複数のプロジェクトのADO.NETエンティティ接続文字列
- 30. 2つの異なるタイプの文字エンティティ
「\ 0」を使用することもできます。これは、sprintfを使用している場合に便利です。 – Leigh