Wenn mein writeInt() und writeUTF() wie folgt aussieht:Implementieren Sie readInt und readUTF für die PHP-Dateioperation?
function write_int($value)
{
$data = pack('N', $value);
fwrite($this->file, $data); #$this->file is get by fopen($path,"wb")
}
function write_utf($value)
{
$this->write_int(strlen($value));
fwrite($this->file,$value);
}
Wie es zu lesen? Ich versuche:
function read_int()
{
$data = fread($this->file, 4); #$this->file is get by fopen($path,"rb")
return unpack('N', $data); #unpack return array , not int
}
function read_utf($value)
{
$l = $this->read_int(); #unpack return array , not int
return fread($this->file,$l); #type mismatch
}
Sie können die Abweichung des Typs sehen.
Übrigens können Sie das Format von writeInt und writeUTF ändern. Ich möchte nur eine Möglichkeit zum Schreiben und Lesen für Datei
http://blog.csdn.net/guotong1988/article/details/51063015 –