[PHP-users 34268] Re: fgetcsv 関数でバグ !?

okuyama @ workgroup.jp okuyama @ workgroup.jp
2009年 2月 4日 (水) 14:26:51 JST


おく@ITCOMです。

注意: この関数はロケール設定を考慮します。もし LANG が例えば en_US.UTF-8 の場合、 ファイル中の 1
バイトエンコーディングは間違って読み込まれます。


2009/02/04 14:24 片桐 信治 <sin142857 @ yahoo.co.jp>:
> 失礼しました。
> コードは以下のようになっています。
>
> よろしくお願いします。
>
> function read_csv_plan($filename){
> $retu="2";
> $filename="csv/".$filename;
> mb_internal_encoding('EUC-JP');
> $myself = basename($_SERVER['SCRIPT_NAME']);
>
> $delimiter = mb_convert_encoding(",", 'EUC-JP',
> 'SJIS-win');                    //CSV
> 区切り文字
> $infp=fopen($filename,"r");
>    $ret=array();
>    $num=0;
>    while (($csv = fgetcsv($infp, 10000, $delimiter)) !==
> FALSE) {
>        $ret1=array();
>        $ii=0;
>        foreach ($csv as $key=>$val) {
>            $ii++;      //1行目は読み飛ばす
>            if($ii==$retu){
>                if(!empty($val)){
>                   $buff=$val;//$retu行目の配列内容を一
> 時格納
>                   $buff=mb_convert_encoding($buff,
> 'EUC-JP', 'SJIS-win');//
> コード変換
>                   $num=0;
>                 }else{$num++;}
>            }elseif($ii>1){
>               $val=mb_convert_encoding($val, 'EUC-JP',
> 'sjis-win');//
> コード変換
>               $buff3=array_push($ret1,$val);
>            }
>        }
>        $ret[$buff][$num]=$ret1;
>    }
>    fclose($infp);
>   return $ret;
> }
>
>
>
> --------------------------------------
> Yahoo! JAPAN - Internet safety for children and parents.
> http://pr.mail.yahoo.co.jp/security/
> _______________________________________________
> PHP-users mailing list  PHP-users @ php.gr.jp
> http://ml.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://oldwww.php.gr.jp/php/novice.php3
>



-- 
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■携帯初のフル3DオンラインRPG!!
『イルーナ戦記online』
5/12(月) i-mode メニューサイトオープン
http://iruna.asobimo.com/
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
2007/7/04
CM王国β版 リリース

http://cm-king.com/
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■無料ファイル転送

SSL対応で安心!アスキーでも特集されました。
http://postfile.jp
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■最新ゲームニュース

無料Flashゲーム20本遊び放題!
http://www.gamingtv.jp/
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
.    ・ .  +    : ゜.   ‥     ゜.  .
 ‥     ゜.  .    .    ・.    ・ .  +
   /  +    ゜.      ・ .  +    :

★               アイ・ティ・コム
  彡彡ミ         奥山 敦二 (Atsuji Okuyama)
  )∂∂b        mail:  okuyama @ workgroup.jp
 ( ー  人__     msn : okuyama_vingt @ msn.com
   ̄/)/    |
    |` ̄    "\


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