誰かがこのコードの理由を説明できますか:
$str = "StackOverflow";
echo $str . " - ";
$strCompressed = gzcompress($str);
//echo $strCompressed . " - ";
$strUncompressed = gzuncompress($strCompressed);
echo $strUncompressed . " - ";
次の期待される出力が得られます。StackOverflow - StackOverflow -
しかし、このコード(ファイルからの書き込みと読み取り):
$str = "StackOverflow";
$strCompressed = gzcompress($str);
$file = "test.cache";
$fp = fopen($file, "w");
fwrite($fp, $strCompressed);
fclose($fp);
$strCompressed = readfile($file);
echo gzuncompress($strCompressed);
の待機出力を生成しませんStackOverflow
か?
また、最初の例 ( ) のコードのコメント行のコメントを外すと//echo $strCompressed . " - ";
、スクリプトは次のようなものを出力するStackOverflow - xś.ILÎö/K-JËÉ/
ので、2 番目のStackOverflow -
行がコメントアウトされていないことがわかります。どんな洞察も高く評価されます。