我想只将csv中的数据[0]放到新的csv文件中。 文件138702_fr的数据0包含一些skus。我想在new.csv中放入以M或O开头的sku。
我不知道如何做到这一点。
// Open the output csv file
$outputfp = fopen('new.csv', 'w');
// Read from the input csv file
if (($inputfp = fopen("138702_fr.csv", "r")) !== FALSE) {
while (($data = fgetcsv($inputfp, 1000, ";")) !== FALSE) {
$line=array();
$line[]=$data[0];
// Write the line to the file
fputcsv($outputfp, $line);
}
// Clean up
fclose($inputfp);
fclose($outputfp);
}
我尝试添加此功能:
<?php
$outputfp = fopen('new.csv', 'w');
if (($inputfp = fopen("138702_fr.csv", "r")) !== FALSE) {
while (($data = fgetcsv($inputfp, 1000, "|")) !== FALSE) {
$line=array();
// SKU
$line[]=$data[1];
$price_calcul=(($data[4]*0.20)+$data[4])+2.5;
$line[] = number_format($price_calcul,2);
$line[]=$data[9];
if(in_array(strtoupper($line[1]), array('E','O')))
fputcsv($outputfp, $line);
}
// Clean up
fclose($inputfp);
fclose($outputfp);
}
?>
答案 0 :(得分:0)
$input = fopen("input.csv","r");
$output = fopen("output.csv","w");
// while there are rows in the input csv
while($row = fgetcsv($input)) {
// check if sku ($row[0]) starts with M, m, O or o
if(in_array(strtoupper($row[0][0]), array('M','O')))
// if it does, write it to the output file
fputcsv($output, array($row[0]));
}