Advertisement

如何读取csv文件并存入数据库?

阅读量:
复制代码
 <?php

    
  
    
 $handle = fopen($strfile, "r");
    
 if ($handle) {
    
     $iteration = 0;
    
     while ($file_conent = fgetcsv($handle, 1000, ",")) {
    
     if ($iteration >= 0) {
    
         $k = 0;
    
         if ($file_conent[0] != '') {
    
             if ($file_conent[1] != '') {
    
                 $products_status = tep_db_query("select products_id from products WHERE products_model='" . $file_conent[0] . "'");
    
                 $product_values = tep_db_fetch_array($products_status);
    
                 if (tep_db_num_rows($products_status) > 0) {
    
                     if ($action == 'update_product_quantity_csv') {
    
                         if ($file_conent[1] == 0) {
    
                             tep_db_query("update products set products_quantity  = '" . $file_conent[1] . "',products_status =0 
    
 								    where products_id ='" . $product_values['products_id'] . "'  AND products_quantity_constant='N'");
    
                         } else {
    
                             tep_db_query("update products set products_quantity  = '" . $file_conent[1] . "',products_status =1 
    
 								    where products_id ='" . $product_values['products_id'] . "'  AND products_quantity_constant='N'");
    
                         }
    
                     }
    
                 } else {
    
                     array_push($products_notin_web, $file_conent[0]);
    
                 }
    
             } else {
    
                 array_push($products_not_updated, $file_conent[0]);
    
             }
    
         }
    
     }//if
    
     $iteration++;
    
     }//while
    
 }
    
 ?>
    
    
    
    
    AI写代码

工作中遇到的,觉得有点用,就mark下来了:

复制代码
    $handle = fopen($strfile, "r");
    
    AI写代码

这个就不用说了,以只读方式打开文件。

复制代码
    $file_conent = fgetcsv($handle, 1000, ",")
    
    AI写代码

看这句,fgetcsv(), 从文件指针中读入一行并解析 CSV 字段,这里是以“,”为数据分隔读取数据的

比如:

y470,5000

y480,5500

复制代码
    $file_conent[0]
    
    AI写代码

这个自然是每一行的第一个数据了。

再来个while循环执行导入的操作

so

done!

全部评论 (0)

还没有任何评论哟~