ホームページ  >  記事  >  バックエンド開発  >  PHP の fgetcsv 関数は CSV ファイルを MySQL データベースにインポートします_PHP チュートリアル

PHP の fgetcsv 関数は CSV ファイルを MySQL データベースにインポートします_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 16:57:25779ブラウズ

この記事では、csv ファイルを mysql データベースにインポートする fgetcsv 関数を詳しく紹介します。同時に、中国語の文字化けの解決策も参照できます。


Excel データの大規模なバッチを mysql データベースに処理する場合、文字化けが発生した場合は、PHP に付属の fgetcsv 関数を使用して、まず csv ファイルからデータを 1 行ずつ取得し、それを SQL ステートメントでデータベースにインポートします。 、iconv 関数を使用してトランスコードできます。


コード例:

コードは次のとおりです コードをコピー

$row = 1;
$handle = fopen("test.csv","r");
while ($data = fgetcsv($handle, 1000, ",")) {//1000 は csv ファイルの合計行数で、カンマはデータ区切り文字です。両方のパラメーターは無視できます
。 $num = count($data);
echo "

行 $row には $num 個のフィールドがあります。
n";
$行++;
for ($c=0; $c echo $data[$c] . "
n";
}
}
fclose($handle);
?>

mysqlインポート時の中国語文字化け

一般的なオンライン方法を使用して csv ファイルの内容を読み取って mysql データベースにアップロードすると、iconv 関数を使用してデータをトランスコードした後でも文字化けが発生します。 setlocale() 関数を使用できます:

この関数は、CSV データの読み取りと書き込みを行う前に、この関数を使用して定義します。たとえば、CSV ファイルが BOM なしの UTF-8 形式である場合は、次の関数を使用して定義します。

コードは次のとおりですコードをコピー
setlocale(LC_ALL, 'zh_CN.UTF8');

次に、iconv 関数を使用して、データコンテンツをデータベースにトランスコードし、その後のその他の操作を行います。

http://www.bkjia.com/PHPjc/631522.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/631522.html技術記事この記事では、csv ファイルを mysql データベースにインポートする fgetcsv 関数を詳しく紹介します。同時に、中国語の文字化けの解決策も参照できます。 大量に処理中...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。