簡體   English   中英

PHP的導入CSV文件到數據庫

[英]php import csv file into database

我有一個文件需要導入到數據庫中,但是我想一次導入10條記錄。

例如,我的.csv文件中有100條記錄,因此第一次運行它將從0開始,然后將其轉到10,並將您更改為domain.com/importfile.php/?start=10

這是我使用的代碼。

$file = fopen($file, "r");
    while (($data = fgetcsv($file, 8000, ",")) !== FALSE) {
        $county = new County();
        $county->countrycode = $countrycode;
        $county->code = trim($data[0]);
        $county->var_name = $county->mod_write_check( trim($data[1]) );
        $county->name = trim($data[1]);
        $county->statecode = trim($data[2]);
        $save = $county->save();
    }
    fclose($file);

我想知道是否可以做到。

您可以使用$seek = ftell($file); ftell文檔fseek($file, $seek+1)您需要在會話中或其他地方攜帶$seek的值

我建議使用SplFileObject刪除文件。

這是一個基本的博客:

http://hakre.wordpress.com/2010/07/25/parsing-csv-files-with-php-spl-style/

SplFileObject可以輕松查找,但是與limitIterator結合使用,您還可以執行以下操作:

$csv = new SplFileObject('data.csv');
$csv->setFlags(SplFileObject::READ_CSV);

foreach(new LimitIterator($csv, 0, 500) as $line){
  #save $line
}

程式碼片段來源

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM