首页 文章

使用fgetcsv通过csv循环

提问于
浏览
8

我有一个包含3列的csv文件: email addressfirst namelast name . 我有一个阶段,我可以使用以下代码打印出数组:

<?php
$file = fopen("testEmails.csv","r");

while(! feof($file))
{
print_r(fgetcsv($file));
}

fclose($file);
?>

这将打印数组,因此每行都有一个字段 . 我想要它打印的纯粹是行的第一列中的值 . 如何做到这一点,关于fgetcsv的文档对我来说似乎非常粗略(相对初学者) .

谢谢 .

3 回答

  • 1

    fgetcsv 文档中的第一个示例包含您需要的块 .

    http://php.net/manual/en/function.fgetcsv.php

    while (($data = fgetcsv($file)) !== FALSE) {
        echo "email address " . $data[0];
    }
    

    fgetcsv 返回表示列的数字索引数组,因此您只想打印第一列 .

  • 14

    你很亲密您已经拥有该阵列,因此您只需打印第一列即可 .

    但是,您也可以使用 fgetcsv 本身作为循环的控制变量 .

    while (($array = fgetcsv($file) !== FALSE) {
          print_r($array[0]);
    }
    
  • 0

    而不是 print_r 你可以尝试 echo

    <?php
    $file = fopen("testEmails.csv","r");
    
    while(! feof($file))
    {
    echo fgets($file). "
    "; } fclose($file); ?>

相关问题