[PHP-users 24144] Re: テキストアップロードの際の文字コード

Katsuo Mogi mogi-k2 @ msg.biglobe.ne.jp
2005年 1月 15日 (土) 20:38:12 JST


茂木です。

In the message [PHP-users 24143] テキストアップロードの際の文字コード
               <200501151024.j0FAO2mA007781 @ mx07.ms.so-net.ne.jp>
"kohei-w" <kohei-w @ wd6.so-net.ne.jp> wrote:

> 一度読み込んだものを出力する際は、
> mb_convert_encodingで、変換できるのは分かるのですが、
> このような場合、どのようにすれば、JISコードのテキスト(CR改行のもの)も、
> 一行ごとに取得できるのでしょうか。

> 吐き出すプログラムは下記の通りです。
> <?php
> $fp = fopen($_FILES['local_text_file']['tmp_name'] , "r");
> $lines = file ($_FILES['local_text_file']['tmp_name']);
> foreach ($lines as $num => $line) {
>    echo "Line #<b>{".$num."}</b> : " . htmlspecialchars($line) . "<br>\n";
> }
> ?>

以下でどうでしょう?

<?php
$contents = file_get_contents  ($_FILES['local_text_file']['tmp_name']);
$lines = preg_split ('/[\r\n]+/', $contents);
foreach ($lines as $num => $line) {
   echo "Line #<b>{".$num."}</b> : " . htmlspecialchars($line) . "<br>\n";
}
?>

自力で分割するしかないと思います。
$fp = ... の行は必要ないですよね。

参考になれば幸いです。
(文字コードというより改行コードの問題のような...)

--
---------------------------------
 茂木克夫
    mail: mogi-k2 @ msg.biglobe.ne.jp
    site: http://www.momo.dyndns.org/~katsu/
---------------------------------



PHP-users メーリングリストの案内