我想将数据从数据库导出到CSV文件。
我的PHP代码就像这样
$members = Db::getResult('select * from '.MEMBERS_TABLE_NAME.' order by '.MEMBERS_COLUMN_PREFIX.'_lastname, '.MEMBERS_COLUMN_PREFIX.'_firstname');
$fileName = "../db_user_export".".csv";
$handle = fopen($fileName, 'w+');
fputcsv($handle, array_keys($members[0]));
foreach ($members as $member) {
fputcsv($handle, $member);
}//foreach
fclose($handle);
现在我在CSV中得到的输出是这样的:
“COLUMN A”“COLUMN B”“COLUMN C”,“password,username,fistname”,“lastname,updated”“loggedin,is_new”
但我想这样:
“COLUMN A”“COLUMN B”“COLUMN C”,“password”“username”“firstname”。
任何知道怎么做的人?
答案 0 :(得分:0)
请勿使用select *,而只选择您想要的字段
答案 1 :(得分:0)
如果您只想在输出中输入三个字段,请不要选择所有字段:
SELECT '.MEMBERS_COLUMN_PREFIX.'_password, '.MEMBERS_COLUMN_PREFIX.'_username, '.MEMBERS_COLUMN_PREFIX.'_firstname FROM '.MEMBERS_TABLE_NAME.' ORDER BY '.MEMBERS_COLUMN_PREFIX.'_lastname, '.MEMBERS_COLUMN_PREFIX.'_firstname'