PHP fgetcsvの定義と使い方(windowsとlinuxの互換性の問題を添付)

2065 ワード

PHP fgetcsv定義と使い方
PHP fgetcsv()関数は、ファイルポインタから行を読み込み、CSVフィールドを解析します.
PHP fgetcsv()と同様に、PHP fgetcsv()は読み込まれた行を解析し、CSV形式のフィールドを見つけて、これらのフィールドを含む配列を返します.
fgetcsv()エラーが発生した場合にFALSEに戻ります.ファイルの終了に遭遇した場合も含まれます.
注記:PHP 4.3.5から、PHP fgetcsv()の操作はバイナリで安全です.
構文
fgetcsv(file,length,separator,enclosure)
パラメータ
説明
file
必要です.検査する書類を定める.
length
オプション.行の最大長を指定します.CVSファイル内で最も長い行より大きい必要があります.PHP 5ではこのパラメータはオプションです.PHP 5までは必須です.(PHP 5.0.4以降のバージョンでは0に設定)このパラメータを無視すると、長さは制限されませんが、実行効率に影響を与える可能性があります.
separator
オプション.フィールド・デリミタ(1文字のみ許可)を設定します.デフォルトはカンマです.
enclosure
オプション.フィールドの折り返し文字(1文字のみ)を設定します.デフォルトは二重引用符です.このパラメータはPHP 4.3.0に追加された.
ヒントとコメント
注記:CSVファイルの空白行は、エラーとして扱われない単一nullフィールドを含むパケットの配列として返されます.
注記:この関数は領域設定に敏感です.例えばLANGをen_にするUS.UTF-8の場合、シングルバイト符号化されたファイルに読み取りエラーが発生します.
注記:PHPがファイルを読み込むときにMacintoshファイルの行終端を認識できない場合はauto_をアクティブにできますdetect_line_endingsランタイム構成オプション.
例1
 
  
$file = fopen("contacts.csv","r");
print_r(fgetcsv($file));
fclose($file);
?>

CSVファイル:
   George, John, Thomas, USA James, Adrew, Martin, USA
類似の出力:
   Array ( [0] => George [1] => John [2] => Thomas [3] => USA )
例2
 
  
   $file = fopen("contacts.csv","r");
while(! feof($file)) { print_r(fgetcsv($file));
} fclose($file);
?>

CSVファイル:
   George, John, Thomas, USA James, Adrew, Martin, USA
類似の出力:
   Array ( [0] => George [1] => John [2] => Thomas [3] => USA Array ( [0] => James [1] => Adrew [2] => Martin [3] => USA )
Windowsとlinuxの互換性の問題今日は問題が報告されていますlinuxプラットフォームの下でfgetcsvが処理する空きデータは最初は中phpバージョンの問題だと思っていましたが、実はバージョンとは関係なくwindowの下で開発した同僚には問題はありません.自分のノートとサーバーでは、linuxシステムを使用している同僚にも空のデータの問題が発生しています.
Googleちょっと
設定エリア:簡体字中国語、UTF-8コード
 
  
setlocale(LC_ALL, 'zh_CN.UTF-8');