我正在关注一个教程,并且遇到了我需要解释的代码。
此模板 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,price
Trek,Emonda,2017,Hybrid,Unisex,black,1.5,5,1495.00
Cannondale,Synapse,2016,Road,Unisex,matte black,1.0,5,1999.00
Schwinn,Cutter,2016,City,Unisex,white,18,4,450.00
Mongoose,Switchback Sport,2015,Mountain,Mens,blue,24,2,399.00
Diamondback,Overdrive,2016,Mountain,Unisex,dark green,23.7,3,565.00
Schwinn,21-Speed Suburban CS,2015,Hybrid,Womens,burgundy,20,3,299.00
Schwinn,Sanctuary 7-Speed,2016,Cruiser,Womens,purple,19.5,3,190.00
Vilano,Forza,2015,Road,Unisex,silver,13.6,4,390.00
SE,Creature,2016,BMX,Mens,dark grey,9.1,2,410.00
我了解除此部分之外的所有内容:
if(!$header) {
$header = $row;
}
我正在努力理解 php 代码如何识别哪个是标题行,哪个不是。谁能解释一下,谢谢。
牧羊人nacy