PHP は CSV データを 1 行ずつデータベースに読み込みます

不言
リリース: 2023-03-24 06:34:02
オリジナル
1486 人が閲覧しました


要件: Excelファイルからエクスポートしたcsvデータをデータベースにインポートします

解決策は次のとおりです:

 // 判断文件是否上传成功
        if (empty($_FILES['file1']) && $_FILES['file1']['error'] != 0) {
            return 'Error file1';
        } else {
            $filename = $_FILES['file1']['tmp_name'];
        }

        // 组装数据
        $fields = ['name', 'age', 'telephone'];
        $fields_cnt = count($fields);
        
        // 用二进制打开文件,避免编码问题
        $fp_in = @fopen($filename, "rb");
        while (!feof($fp_in)) {
            $line = fgets($fp_in);
            if ($line) {
                $arr = explode(',', $line);
                // 待插入数据格式化
                $fmt = array_map(function ($v) {return ($v == 0) ? $v : ((int) $v);}, $arr);
                $data[] = array_combine($fields, array_splice($fmt, 1, $fields_cnt));
            }
        }
        fclose($fp_in);

        // TP数据批量入库
        $q = M("excel_1")->addAll($data);
ログイン後にコピー

概要:

ファイル操作関数シリーズ: fopen、feof、fgets、fcloseそれぞれopen、find最後に、行を取得して閉じます

データの書式設定の意味: データベース A のエクスポートされたデータとして、整数 + " を持つデータがあります。書式設定により、" 記号を自動的に削除できます

array_combine キーと値の結合配列。

関連する推奨事項:

Phpでデータを読み取るための基本操作

PHPでローカルjsonファイルを読み取る例の共有

CSVファイルデータを読み取り、CSVファイルを生成するPHP

以上がPHP は CSV データを 1 行ずつデータベースに読み込みますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!