實驗室招新系統需導出學生基本信息表(lab_userinfo)與 OJ 刷題數據表(lab_oj_data)的聯合數據。
$user = $userinfo->table('lab_userinfo,lab_oj_data')
->field('
lab_userinfo.userid,
lab_userinfo.truename,
lab_userinfo.year,
lab_userinfo.sex,
lab_userinfo.subject,
lab_userinfo.email,
lab_userinfo.date,
lab_oj_data.username,
lab_oj_data.solved,
lab_oj_data.Submit,
lab_oj_data.AC
')
->where('lab_userinfo.userid=lab_oj_data.userid AND pass=0')
->order('lab_oj_data.solved DESC')
->select();
$user = $userinfo->table('lab_userinfo u, lab_oj_data d')
->field('u.userid, u.truename, d.solved, d.Submit, d.AC')
->where('u.userid=d.userid AND u.pass=0')
->order('d.solved DESC')
->select();
注意:ThinkPHP 表前綴配置下,除模型調用外需手動添加前綴。
參考專題《PHP實現導出Excel數據的類庫用法示例》,使用 Excel_XML 類將查詢結果數組導出為 .xls 文件。