Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/27.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导出-空行问题_Php_Sql Server_Csv_Export - Fatal编程技术网

PHP/CSV导出-空行问题

PHP/CSV导出-空行问题,php,sql-server,csv,export,Php,Sql Server,Csv,Export,我在CSV导出过程中遇到问题(通过简单的.html按钮)。 标题前的第一行为空。这会导致excel导入过程中出现一些问题(如果我没有手动删除第一个空行,则不会导入文件的…最后一行) 因此,我试图删除第一个空行,但我真的不知道如何在导出期间执行此操作 请参见下面的php代码,将数据导出到.csv(工作模式): 你能显示一个var\u转储($headers)?我已经用var\u转储($headers)进行了编辑;我在console中本地尝试了这一点,并且在没有额外换行的情况下工作得很好。您可以尝试在

我在CSV导出过程中遇到问题(通过简单的.html按钮)。 标题前的第一行为空。这会导致excel导入过程中出现一些问题(如果我没有手动删除第一个空行,则不会导入文件的…最后一行)

因此,我试图删除第一个空行,但我真的不知道如何在导出期间执行此操作

请参见下面的php代码,将数据导出到.csv(工作模式):


你能显示一个
var\u转储($headers)
?我已经用var\u转储($headers)进行了编辑;我在console中本地尝试了这一点,并且在没有额外换行的情况下工作得很好。您可以尝试在控制台中测试这个吗?
<?php

// Query
$sql = "SELECT * FROM [cm_blueprint] WITH(NOLOCK) ORDER BY cm_blueprint_name";
$msdb = new DB();
$result = $msdb->runQuery($sql);
date_default_timezone_set("Europe/Zurich");

// Array
$data = array();
While($row = sqlsrv_fetch_array($result,SQLSRV_FETCH_ASSOC)) {
    $data[] = array(
        "cm_blueprint_id"               =>  utf8_encode($row['cm_blueprint_id']),
        "cm_blueprint_name"             =>  utf8_encode($row['cm_blueprint_name']),
        "cm_blueprint_type"             =>  utf8_encode($row['cm_blueprint_type']),
        "cm_blueprint_vradatecreated"   =>  utf8_encode($row['cm_blueprint_vradatecreated']->format('Y-m-d G:i:s')),
        "cm_blueprint_vralastupdated"   =>  utf8_encode($row['cm_blueprint_vralastupdated']->format('Y-m-d G:i:s')),
        "cm_blueprint_description"      =>  utf8_encode($row['cm_blueprint_description']),
        "cm_blueprint_service"          =>  utf8_encode($row['cm_blueprint_service']),
        "cm_blueprint_status"           =>  utf8_encode($row['cm_blueprint_status']),
        "cm_blueprint_version"          =>  utf8_encode($row['cm_blueprint_version']),
        "cm_blueprint_requestable"      =>  utf8_encode($row['cm_blueprint_requestable']),
        "cm_blueprint_tenant"           =>  utf8_encode($row['cm_blueprint_tenant']),
        "cm_blueprint_output"           =>  utf8_encode($row['cm_blueprint_output']),
        "cm_blueprint_quota"            =>  utf8_encode($row['cm_blueprint_quota']),
        "cm_blueprint_createdtime"      =>  utf8_encode($row['cm_blueprint_createdtime']->format('Y-m-d G:i:s')),
        "cm_blueprint_lastupdate "      =>  utf8_encode($row['cm_blueprint_lastupdate']->format('Y-m-d G:i:s'))
    );
}

// Export Part
$file = "cm_blueprint.csv";

// Headers
$headers = array();
foreach( sqlsrv_field_metadata($result) as $fieldMetadata){
    $headers[] = $fieldMetadata['Name'];
}   

// File to export
header('Content-Type: text/csv');
header('Content-Disposition: attachment; filename="'.basename($file).'"');
header('Pragma: no-cache');
header('Expires: 0');       
$fp = fopen('php://output', 'w');
fputcsv($fp, $headers);

// Array export
foreach ($data as $fields) {fputcsv($fp, $fields);}     
break;

?>
array(15) { [0]=> string(21) "cm_blueprint_id" [1]=> string(23) "cm_blueprint_name" [2]=> string(23) "cm_blueprint_type" [3]=> string(33) "cm_blueprint_vradatecreated" [4]=> string(33) "cm_blueprint_vralastupdated" [5]=> string(30) "cm_blueprint_description" [6]=> string(26) "cm_blueprint_service" [7]=> string(25) "cm_blueprint_status" [8]=> string(26) "cm_blueprint_version" [9]=> string(30) "cm_blueprint_requestable" [10]=> string(25) "cm_blueprint_tenant" [11]=> string(25) "cm_blueprint_output" [12]=> string(24) "cm_blueprint_quota" [13]=> string(30) "cm_blueprint_createdtime" [14]=> string(29) "cm_blueprint_lastupdate" }