pplog系バージョンアップ

広告

pplog 2.43
pplog2 2.45

更新内容
 1.文字コード変換部分の修正ダッシュ

1.について
一部の文字について、うまく文字コードを取れないために、文字化けを起こしてしまうことがあるのでその対応版です。


更新方法更新

::pplog::
・pplog.phpを上書き
・pplogfunc.phpを上書き

::pplog2::
・index.phpを上書き
・pplog2func.phpを上書き

php4.3.11を使っている方で、ページが真っ白になってしまう場合は、
pplog(2)func.phpを開いて、function convert内の

if (function_exists('mb_convert_encoding')) {
$code = mb_detect_encoding($str,"auto");
$inc = mb_internal_encoding();
if ($code != $inc) {
$code = $inc;
}
$str = mb_convert_encoding($str, "SJIS" , $code);
$str = mb_convert_kana($str, "K");
} elseif (function_exists('JcodeConvert')) {
$str = JcodeConvert($str, 0, 2);
$str = HANtoZEN_SJIS($str);
}



#if (function_exists('mb_convert_encoding')) {
# $code = mb_detect_encoding($str,"auto");
# $inc = mb_internal_encoding();
# if ($code != $inc) {
# $code = $inc;
# }
# $str = mb_convert_encoding($str, "SJIS" , $code);
# $str = mb_convert_kana($str, "K");
#} elseif (function_exists('JcodeConvert')) {
$str = JcodeConvert($str, 0, 2);
$str = HANtoZEN_SJIS($str);
#}

という風に変えてください。

内容的には、取得文字コードと内部エンコードが異なった場合、
内部エンコードを優先にする方法を取っています。
ただし、真っ白になってしまった場合は、、前のバージョンと処理に違いが無いために
また化けます。。。
その場合は、
$str = JcodeConvert($str, 0, 2)
の0の部分をお使いのサーバの内部エンコードと同じものにしてください。
内部エンコードがどの数字になるかは、jcode.phpを開いてください。
そこに記載されています。(0はautoです。)