変更

2016-10-08 3 views
1

私はgzcompressedファイルにデータを格納する機能を持っているためgzcompressedファイルをチェックする最適化、私は最適化すると、データが既に記憶gzcompressedファイルのように同じであれば保存しない変更

function savedata($fileName,&$data){ 
    file_put_contents($filename,gzcompress($data)); 
} 

のような。

私はファイル全体を開いて解凍し、$dataと比較することができますが、別の方法があるはずです。
おそらくgz-dデータにはcrcなどがあるので、データを圧縮してcrcを取り出し、それを既存のファイルなどのcrcと比較するだけです。

私はちょうどファイルと$dataのチェックを速くするために変更をomtimizeしたいです。

+0

PHP?言語に言及するか、少なくともタグが必要です。 –

答えて

1

gzcompress()は、gzip形式ではなくzlib形式に圧縮します。

各zlibストリームは、CRCではなく4バイトのチェック値で終了します。それらを比較して、2つのストリームが異なるかどうかを確認できます。ただし、2つのチェック値が同じ場合は、ストリームが同じであると判断できません。

関連する問題