Php fputcsv-在彼此下方插入列
对不起,这个标题,但我不知道如何更好地解释。我正在将两个表导出到csv文件,但最终的布局不是我所期望的,我真的不知道如何执行此操作,我知道的是:Php fputcsv-在彼此下方插入列,php,fputcsv,Php,Fputcsv,对不起,这个标题,但我不知道如何更好地解释。我正在将两个表导出到csv文件,但最终的布局不是我所期望的,我真的不知道如何执行此操作,我知道的是: $sql = "SELECT a.number, a.location,a.confirmed etc etc FROM campain UNION ALL SELECT workerNumber, workerName, socialSecurity,day1nh,day1eh,day2nh,day2eh etc etc FROM timesheet
$sql = "SELECT a.number, a.location,a.confirmed etc etc FROM campain UNION ALL SELECT workerNumber, workerName, socialSecurity,day1nh,day1eh,day2nh,day2eh etc etc FROM timesheet";
$qry = $pdo->prepare($sql);
$qry->execute();
$filename = "exportcsv/file".time().".csv";
$data = fopen($filename, 'w');
$row = $qry->fetch(PDO::FETCH_ASSOC);
if ($row)
{
fputcsv($data,array_keys($row), $delimiter = ';');
while ($row)
{
$array = array_map("utf8_decode", array_values($row));
fputcsv($data,$array, $delimiter = ';');
$row = $qry->fetch(PDO::FETCH_ASSOC);
}
fclose($data);
}
这导出了一个很好的csv,所有列都很好地分开,但它将所有内容并排显示,正如您所看到的,我有day1nh和day1eh等,而不是输出上的这个:
workerNumber workerName socialSecurity day1nh day1eh
我想要这个:
workerNumber workerName socialSecurity day1nh day2nh etc
day1eh day2eh etc
为什么在调用中将分隔符分配给
fputcsv($data,$array,$delimiter=';')代码>?我以为这就是解决问题的方法,但你认为这可能是我的问题吗?事实上,如果我删除那个分隔符,它会把一切都搞糟。我迷路了!!!不,我不认为这是你的问题。它仍然会过去;听电话。我只是想知道你为什么这样做。Tbh,我无法从您给出的描述中理解您的实际问题。好吧,当我打开csv文件时,所有内容都在一行中输出,我想要的是显示在彼此下方的天数。在csv文件中没有像day1nh和day1eh这样的两列…我只想要一列day1nh,在这一列下面(所以再多一行),它将显示day1eh