我有一个csv文件,我想删除分号(;)后面的所有字符。在每一行中只有一个分号。这是我的代码,但它不起作用:
$variable = substr($variable, 0, strpos($variable, ";"));
$file = "D:/test/php/liste_compte.csv";
$content = file_get_contents($file);
$content = str_replace($variable, $content);
file_put_contents($file, $content);
任何想法
提前THX答案 0 :(得分:0)
<?php
$csv=<<<HERE
a,b,c,d
e,f,g,h
i,j,k;,l
m,n,o,p
HERE;
$output = '';
$lines = explode(PHP_EOL, $csv);
for($i = 0; $i<count($lines); $i++) {
$line = $lines[$i];
// check for ;
if(strpos($line, ';') !== false) {
// if found then remove everything after that
$line = substr($line, 0, strpos($line, ';'));
}
$output.=$line."\r\n";
} // end of for loop
file_put_contents("file.csv", $output);
由于所需的输出存储在$ output中,您可以随心所欲地执行
如果你能为我们提供样本csv数据答案可以准确..