将csv文件行的每个项放入变量中

时间:2015-07-02 11:38:52

标签: php variables csv while-loop

我有以下代码用于打开上传的csv文件,然后在单独的行中输出每一行。

  if(isset($_GET['uploadfile'])) {
 $file = fopen($_FILES['csvfile']['tmp_name'], 'r+');
 while(! feof($file))
{
 echo fgets($file). "<br />";
 }
 fclose($file);
  }

输出看起来像这样:

        ABC,-,-,-,-,-,- 
        ACR,-,-,-,-,-,- 
        AGL,-,1.60,-,3.25,-,6.35 
        AGO,-,-,-,-,-,- 
        AHS,-,-,4.00,-,-,- 
        ALC,-,1.60,-,3.00,-,6.35 
        ALV,-,-,4.00,-,-,- 
        AMG,-,-,-,-,-,- 
        ANF,-,-,-,-,7.95,- 
        ANG,-,-,-,-,-,- 
        ANN,-,1.60,-,3.25,-,- 
        ANV,0.87,1.60,-,-,-,- 
        APO,-,-,-,-,-,- 
        ARP,-,-,-,-,-,- 
        ARR,-,1.60,-,3.00,-,6.35 
        ASH,-,-,-,-,-,- 
        ATG,-,-,-,-,-,- 
        ATR,-,1.60,-,3.00,-,- 
        AUE,-,1.60,-,3.25,-,- 
        AUN,-,1.60,-,3.25,-,- 
        AUR,-,-,-,-,-,- 
        BAB,0.87,1.60,-,-,-,- 
        BAL,-,1.60,-,-,-,6.35 
        BBE,-,-,-,-,-,- 
        BBL,-,-,-,-,-,- 
        BCH,-,1.60,-,3.25,-,- 
        BDI,-,-,-,-,-,- 
        BEM,-,-,-,-,7.95,- 
        BEN,-,-,-,-,-,- 
        BGE,-,-,-,3.25,-,- 
        BIA,-,-,-,-,-,- 
        BIF,-,1.60,-,3.25,-,- 
        BLC,0.87,1.60,-,3.25,-,- 

所以有一个产品代码,然后是5个csv单元格,每个单元格用逗号分隔。我试图做的是在运行时为每个变量分配一个变量,所以

   BLC,0.87,1.60,-,3.25,-,- 

可能会成为

     $productcode.$value1.$value2.$value3.$value4.$value5

对于while循环的每个循环。我不确定如何将每一条线拉开,所以我很欣赏任何有关如何做的指针。

2 个答案:

答案 0 :(得分:4)

if(isset($_GET['uploadfile'])) {
    $file = fopen($_FILES['csvfile']['tmp_name'], 'r+');
    while(! feof($file))
    {
        $line = fgetcsv($file);

        list($productcode, $value1, $value2, $value3, $value4, $value5) = $line;

        // Ready to use the variables and insert to database
    }
    fclose($file);
}

现在,您可以根据需要使用varibles,并在列表函数完成后插入数据库,所以在我发表的评论中。

答案 1 :(得分:2)

function dstrkt_script_enqueue() 
{

    wp_enqueue_style('customstyle', get_template_directory_uri() . '/css/customstyle.css', array(), '1.0.0', 'all');
    wp_enqueue_style('normalize', get_template_directory_uri() . '/css/normalize.css', array(), '1.0.0', 'all');
    wp_enqueue_style('icons', get_template_directory_uri() . '/css/icons.css', array(), '1.0.0', 'all');
    wp_enqueue_style('demo', get_template_directory_uri() . '/css/demo.css', array(), '1.0.0', 'all');

    wp_enqueue_script('customjs' , get_template_directory_uri() . '/js/dstrkt.js', array(), '1.0.0', true);
    wp_enqueue_script('borderMenu' , get_template_directory_uri() . '/js/borderMenu.js', array(), '1.0.0', true);
    wp_enqueue_script('classie' , get_template_directory_uri() . '/js/classie.js', array(), '1.0.0', true);

}

add_action( 'wp_enqueue_scripts', 'dstrkt_script_enqueue');

function dstrkt_theme_setup() 
{

    add_theme_support('menus');

    register_nav_menu('primary', 'Primary Header Navigation');
    register_nav_menu('secondary', 'Footer Navigation');

}

add_action('init', 'dstrkt_theme_setup');