为了账号安全,请及时绑定邮箱和手机立即绑定

PHP 从 CSV 文件中提取标题行 - 代码解释

PHP 从 CSV 文件中提取标题行 - 代码解释

PHP
MYYA 2022-10-28 15:23:00
我正在关注一个教程,并且遇到了我需要解释的代码。此模板 php 代码用于解析 csv 文件并使用结果填充 $data 关联数组。<?php $header = false; $data = []; $file = fopen($filename, 'r'); while(!feof($file)) {   $row = fgetcsv($file, 0, ',');   if($row == [NULL] || $row === FALSE) { continue; }   if(!$header) {     $header = $row;   } else {     $data[] = array_combine($header, $row);   } } fclose($file);从此示例 csv 文件中:brand,model,year,category,gender,color,weight_kg,condition_id,priceTrek,Emonda,2017,Hybrid,Unisex,black,1.5,5,1495.00Cannondale,Synapse,2016,Road,Unisex,matte black,1.0,5,1999.00Schwinn,Cutter,2016,City,Unisex,white,18,4,450.00Mongoose,Switchback Sport,2015,Mountain,Mens,blue,24,2,399.00Diamondback,Overdrive,2016,Mountain,Unisex,dark green,23.7,3,565.00Schwinn,21-Speed Suburban CS,2015,Hybrid,Womens,burgundy,20,3,299.00Schwinn,Sanctuary 7-Speed,2016,Cruiser,Womens,purple,19.5,3,190.00Vilano,Forza,2015,Road,Unisex,silver,13.6,4,390.00SE,Creature,2016,BMX,Mens,dark grey,9.1,2,410.00我了解除此部分之外的所有内容:if(!$header) { $header = $row;}我正在努力理解 php 代码如何识别哪个是标题行,哪个不是。谁能解释一下,谢谢。
查看完整描述

1 回答

?
牧羊人nacy

TA贡献1862条经验 获得超7个赞

CSV 文件的第一行是标题。为了确保这个标题不会被读取为正常行,他使用“$header = false;” 一开始。

在第一次迭代之后,他更新了值:

if(!$header) {
    $header = $row;
    }

$row 的值是填充的,所以本质上是真的


查看完整回答
反对 回复 2022-10-28
  • 1 回答
  • 0 关注
  • 150 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信