重松です。こんにちは。
文字化けする文字が Shift_JIS で 2 バイト目に \ がくる文字ですね。
なので、ファイルをあらかじめ EUC に変換してしまえばよいのでは?
exec("/path/to/qkc -eu $csvfile"); // EUC, LF に変換
$logfile = fopen($csvfile, 'r');
不細工ですが、楽でしょう。 :)
原因は、分かりませんが、\ が悪さをしているようですが、PHP は Shift_JIS
に対応したものを使ってますよね?
# OS, PHP のバージョン, 設定等、最低限の環境は明示しましょう
--
Osamu Shigematsu <m5issige @ mr.hitachi-medical.co.jp>