1 回答
TA贡献1872条经验 获得超3个赞
问题是您正在覆盖输出文件并写入输入文件的每个元素,就好像它是文件中的一行一样。此版本在开始时打开输出文件,然后在处理时添加每一行...
$file = fopen('test2.csv', 'r');
$fp = fopen('write.csv', 'w');
while (($line = fgetcsv($file)) !== FALSE) {
if (array_key_exists($line[0], $result)) {
$oldPrice= 500;
$oldPriceplus20= $oldPrice +($oldPrice*0.2);
$oldPriceminus20= $oldPrice -($oldPrice*0.2);
$newPrice = $line[2];
print( "The 'first' element is in the array\nOld price is: ".$oldPrice."\nNew price is:".$newPrice."\n");
print("Old price with +20% is:".$oldPriceplus20."\nOld price with -20% is:".$oldPriceminus20."\n");
if ($newPrice <= $oldPriceplus20 && $newPrice >= $oldPriceminus20){
echo"Take new price\n\n";
}
else{
$line[2] = $oldPrice;
echo"Take the old price.\n";
}
}
fputcsv($fp, $line, ',', ' ');
}
fclose($file);
fclose($fp);
- 1 回答
- 0 关注
- 180 浏览
添加回答
举报