Skip to main content

ログ取得ツール (移転先予定地)

PHPのserialize/unserialize、その他のメモ

PHPのserialize/unserializeの注意。このAPIはstringだけを受けつける。つまりローカルファイルにデータを保管しておきたい場合、serializeは


$tmp=serialize($var);
if($f=fopen($filename, 'w')){
  fwrite($f, $tmp, strlen($tmp));
}

unserializeは


$var=unserialize(join('', file($filename)));

ということになる。このjoinを忘れたりするとダメ。file(“filename”)はarrayを返すのです。

あと、highlight_file()は1文字ずつ出力するらしく、(たぶん)mod_deflateと相性が悪いようだ。


ob_start();
highlight_file("filename");
ob_end_flush();

とすることが必要になる。