我正在尝试使用以下代码将结果导出到csv文件。导出似乎可以工作,但当我打开文件时,它包含页面中的html代码。非常感谢您的帮助。
ob_start();
global $wpdb;
$domain = $_SERVER[\'SERVER_NAME\'];
$table = $wpdb->prefix . "qi_project_requests";
$filename = "export.csv";
$sql = $wpdb->get_results("select * from $table");
$header_row = array(
\'Date Submitted\',
\'Requestor Name\'
);
$data_rows = array();
foreach ($sql as $data) {
$row = array(
$data->date,
$data->rname
);
$data_rows[] = $row;
}
$fh = @fopen( \'php://output\', \'w\' );
fprintf( $fh, chr(0xEF) . chr(0xBB) . chr(0xBF) );
header( \'Cache-Control: must-revalidate, post-check=0, pre-check=0\' );
header( \'Content-Description: File Transfer\' );
header( \'Content-type: text/csv\' );
header( "Content-Disposition: attachment; filename=$filename" );
header( \'Expires: 0\' );
header( \'Pragma: public\' );
fputcsv( $fh, $header_row );
foreach ( $data_rows as $data_row ) {
fputcsv( $fh, $data_row );
}
fclose( $fh );
ob_end_flush();
die();