我的名字,地址和图片存储在我的数据库中。点击"生成EXCEL"按钮将生成.csv文件。我使用逗号作为分隔符。
我的实际o / p应该是这样的:
name address images
peter "house no#2",uk img1.png,img2.png,img3.png
但是目前我在不同的列中使用逗号获取值。我可以这样做吗?请帮忙。
这是我从数据库中获取值的代码:
$sep = ",";
$csv_hdr = "Name".$sep."Address".$sep."Images";
$csv_output="";
for($i=$start;$i<$match;$i++)
{
$csv_output .=$ARRAY[$i]['source_name'].$sep;
$i_add=str_replace('"',"",$ARRAY[$i]['source_address']);
$csv_output.=$ARRAY[$i]['source_address'].$sep;
$csv_output.=$ARRAY[$i]['source_img']."\n";
}
这是我的&#39; GENERATE_EXCEL&#39;带有2个隐藏字段的按钮csv标题和数据。
<div id="btnexcel">
<input type="submit" name="Generate Excel" value="Generate Excel" id="btnreport" formaction="export_to_excel.php"/></div>
<input type="hidden" value="<?php echo $csv_hdr; ?>" name="csv_hdr">
<input type="hidden" value="<?php echo $csv_output; ?>" name="csv_output">
这是我的export_to_excel.php:
<?php
$out = '';
$filename_prefix = 'csv';
if (isset($_GET['csv_hdr'])) {
$out .= $_GET['csv_hdr'];
$out .= "\n";
}
if (isset($_GET['csv_output'])) {
$out .= $_GET['csv_output'];
}
$filename = $filename_prefix."_".date("Y-m-d_H-i",time());
//Generate the CSV file header
header("Content-type: application/vnd.ms-excel");
header("Content-Encoding: UTF-8");
header("Content-type: text/csv; charset=UTF-8");
header("Content-disposition: csv" . date("Y-m-d") . ".csv");
header("Content-disposition: filename=".$filename.".csv");
echo "\xEF\xBB\xBF"; // UTF-8 BOM
//Print the contents of out to the generated file.
print $out;
//Exit the script
exit;
?>