我有一个程序可以将文件转换为excel文件,但出于某种原因我的手机和电子邮件字段会被切换。它看起来像这样 -
firstname lastname email phone
test bi@gmail.com
test d 813-767 leighmimail.com
test Pds 888-413 Bperotects.com
应切换电子邮件和电话
代码:
<?php
session_start();
$num = $_SESSION['num'];
$firstname = $_SESSION['firstnameexport'];
$lastname = $_SESSION['lastnameexport'];
$email = $_SESSION['emailexport'];
$phone = $_SESSION['phoneexport'];
for($i =0; $i< $num; $i++){
$data[$i] = array(
"firstname" => $firstname[$i] , "lastname" => $lastname[$i], "email" => $email[$i], "phone" => $phone[$i]);
}
function cleanData(&$str)
{
$str = preg_replace("/\t/", "\\t", $str);
$str = preg_replace("/\r?\n/", "\\n", $str);
if(strstr($str, '"')) $str = '"' . str_replace('"', '""', $str) . '"';
}
// filename for download
$filename = "website_data_" . date('Ymd') . ".xls";
header("Content-Disposition: attachment; filename=\"$filename\"");
header("Content-Type: application/vnd.ms-excel");
$flag = false;
foreach($data as $row) {
if(!$flag) {
// display field/column names as first row
echo implode("\t", array_keys($row)) . "\r\n";
$flag = true;
}
array_walk($row, 'cleanData');
echo implode("\t", array_values($row)) . "\r\n";
}
unset($_SESSION['num'],$_SESSION['firstnameexport'],$_SESSION['lastnameexport'],$_SESSION['emailexport'],$_SESSION['phoneexport']);
?>
感谢您的时间!
答案 0 :(得分:0)
修正了它 - 我所要做的就是将一些会话变量切换出去,这样就可以为正确的列提供正确的值。
感谢您的时间!