Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将查询另存为CSV文件,但无法获取要在CSV中写入的表头字段名称_Php_Mysql - Fatal编程技术网

Php 将查询另存为CSV文件,但无法获取要在CSV中写入的表头字段名称

Php 将查询另存为CSV文件,但无法获取要在CSV中写入的表头字段名称,php,mysql,Php,Mysql,我正在通过查询成功创建CSV文件并将文件保存在服务器上,但我无法使CSV包含每个查询列名的标题字段。我正在从mysql_字段_名称创建一个headers数组,但无法让它将头写入csv,它只写入表数据。非常感谢您的任何想法/示例 //Create a CSV for $result = mysql_query("SELECT * FROM `car_details`"); if (!$result) die('Couldn\'t fetch records'); $num_fields =

我正在通过查询成功创建CSV文件并将文件保存在服务器上,但我无法使CSV包含每个查询列名的标题字段。我正在从mysql_字段_名称创建一个headers数组,但无法让它将头写入csv,它只写入表数据。非常感谢您的任何想法/示例

//Create a CSV for 
$result = mysql_query("SELECT * FROM `car_details`"); 
if (!$result) die('Couldn\'t fetch records'); 
$num_fields = mysql_num_fields($result); 
$headers = array(); 
for ($i = 0; $i < $num_fields; $i++) 
{     
       $headers[] = mysql_field_name($result , $i); 
} 
$csv_filename = "Policy-" .$datetime.".csv";
$fp = fopen($csv_filename, 'w+');


if ($fp && $result) 
{     
       while ($row = mysql_fetch_row($result)) 
       {
          fputcsv($fp, array_values($row)); 
       } 
}

尝试将$headers作为第一行写入文件。

尝试将$headers作为第一行写入文件。

如下所示:

...
if ($fp && $result) 
{
    fputcsv($fp, $headers);
    while ($row = mysql_fetch_row($result)) 
    {
        fputcsv($fp, array_values($row)); 
    }
}
看起来像:

...
if ($fp && $result) 
{
    fputcsv($fp, $headers);
    while ($row = mysql_fetch_row($result)) 
    {
        fputcsv($fp, array_values($row)); 
    }
}

您没有编写$headers数组,即未使用的变量。您没有编写$headers数组,即未使用的变量。当然,我只需要fputcsv$fp,array_values$headers;在写入数据的while循环之前。有时见树不见木!谢谢你的指导,谢谢。当然-我只需要fputcsv$fp,array_values$headers;在写入数据的while循环之前。有时见树不见木!谢谢你的指导,谢谢。