php は fputcsv() 関数を使用して csv ファイルからデータを読み書きします
この記事の例では、PHP が fputcsv() 関数を使用して csv ファイルからデータを読み書きする方法を説明します。参考のためにみんなで共有してください。具体的な分析は次のとおりです:
fputcsv() 関数は、ファイルまたはデータベースに書き込むためにデータを CSV 形式にフォーマットするために使用されます。
1. CSV ファイルに文字列を書き込みます、コードは次のとおりです:
コードをコピーします コードは次のとおりです:
$test_array = array(
array("111","sdfsd","sdds","43344","rrrr"),
array("sssssssss","gdfgfd","232323","wwewe","dsfds"),
array("fgfg","e4343","dsfds","w2332","xcvxc"),
array("11212","2323","344343","344343","エラー"),
array("fds","43344444","33333333","ttttttt","gggggggggggg"),
array("kdfs","dsfdsfds","wewewe","sdsdddddddd","wwwwwww")
);
$file = fopen("test.csv","w") または die("test.csv を開けません");
foreach($test_array as $line_array)
{
$isSuccess = fputcsv($file,$line_array);
$isSuccess."
" を印刷します。
if($isSuccess===false)
{
die("CSV 行を書き込めません".$line_array);
}
}
fclose($file) または die("ファイル test.csv を閉じることができません。");
fputcsv() 関数は書き込まれた行の文字数または false を返し、書き込みに失敗した場合は false を返します。
2. フォーマットされた CSV 文字列を文字列に保存します。コードは次のとおりです:
コードをコピーします コードは次のとおりです:
$test_array = array(
array("111","sdfsd","sdds","43344","rrrr"),
array("sssssssss","gdfgfd","232323","wwewe","dsfds"),
array("fgfg","e4343","dsfds","w2332","xcvxc"),
array("11212","2323","344343","344343","エラー"),
array("fds","43344444","33333333","ttttttt","gggggggggggg"),
array("kdfs","dsfdsfds","wewewe","sdsdddddddd","wwwwwww")
);
ob_start();
$file = fopen("php://output","w") または die("php://output を開けません");
foreach($test_array as $line_array)
{
$isSuccess = fputcsv($file,$line_array);
if($isSuccess===false)
die("CSV行を書き込めません".$line_array);
}
}
fclose($file) または die("ファイル test.csv を閉じることができません。");
$result = ob_get_contents();
ob_end_clean();
fgetcsv(file, length, separator, enclosure) 関数を使用して csv ファイルを読み取ります。
fgetcsv のパラメータは次のように説明されます:
file: 読み取られるcsvファイル。このパラメータは必須です。
length: CSV ファイル内の最も長い行の長さよりも大きい値を表します。 php5以前では必須パラメータでした。これは php5 のオプションのパラメーターです。このパラメーターが設定されていないか、0 に設定されている場合、php はそれを読み取ります。
データの行全体。行の長さが 8192 バイトを超える場合は、PHP に行の長さを自動的に計算させるのではなく、長さの値を数値に設定する必要があります。
separator: データの区切り文字を指定します。デフォルトはカンマです。「;」として指定すると、fgetcsv 関数は「;」に従って行データを解析します。
fgetcsv:
の戻り値
ファイルのデータ行に基づいて配列を返します。ファイルの読み取り時にエラーが発生した場合は、ファイルの終わりに達した場合も false が返されます。
以下はtest.csvファイルの読み取り例です:
コードをコピーします
コードは次のとおりです:
$file = fopen('test.csv','r') または die("ファイル test.csv を開けません");
$color="#ff0000";
print '
';
while($csv_line=fgetcsv($file))
{
print "";
$len = count($csv_line);
for($i=0;$i
If($i%2==0)$color="#cccccc";
その他 $color="#999999";
印刷 '< td bgcolor ='。$ color。 '>'。htmlentities($ csv_line [$ i])
}
print "
";
}
'テーブル>'を印刷します。
fclose($file) または die("ファイル test.csv を閉じることができません!");
この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。
http://www.bkjia.com/PHPjc/938852.html
www.bkjia.com
truehttp://www.bkjia.com/PHPjc/938852.html
技術記事
この記事では、PHP が fputcsv() 関数を使用して csv ファイルからデータを読み書きする方法について説明します。参考のためにみんなで共有してください。具体的な分析は以下の通りです...
声明:この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。