function process_file($filename, &$tempname) { global $_SGLOBAL; $isfile = 1; $data = new Spreadsheet_Excel_Reader(); //exit('adsf'); $data->setOutputEncoding('gbk'); $data->read($filename); $tempname = date("Y-m-d") . '_download_' . rand() . '.xls'; $filedownload = S_ROOT . './plugin/invite/download/' . $tempname; //初始化一个反馈结果的文件 require_once S_ROOT . './plugin/invite/phpwritexcel/Writer.php'; $workbook = new Spreadsheet_Excel_Writer($filedownload); $worksheet =& $workbook->addWorksheet('Sheet1'); $worksheet->setInputEncoding('utf-8'); $format_column =& $workbook->addformat(array('Size' => 9, 'Bold' => 1)); //读取结果文件的信息 $rows = 0; $recordindex = array('realname', 'sex', 'birthday', 'otheremail', 'academy', 'collegeid', 'class', 'mobile', 'unit'); $record = array('好友姓名(必填)', '好友性别', '生日(8位)', '邮箱(必填)', '学院', '学号', '班别', '手机(必填)', '所在单位', '备注'); $dataindexinfo = array(); encode_record(&$record); input_downloadfile($worksheet, $rows, $record, $format_column); for ($i = 2; $i <= $data->sheets[0]['numRows']; $i++) { //以下注释的for循环打印excel表数据 $datainfo = array(); //$datainfo = array('name', 'sex', 'birthday', 'otheremail', 'academy', 'collegeid', 'class', 'mobile', 'unit'); for ($j = 1; $j <= $data->sheets[0]['numCols']; $j++) { $datainfo[$j - 1] = $data->sheets[0]['cells'][$i][$j]; $dataindexinfo[$recordindex[$j - 1]] = $data->sheets[0]['cells'][$i][$j]; } //var_dump($datainfo[0]); //检查记录的正确性 $nopass = checkinfo($datainfo[0], $datainfo[2], $datainfo[3], $datainfo[7], $isfile); if (!empty($nopass)) { //没有通过的记录加入到一个新文件中 $datainfo[$j - 1] = $nopass; encode_record(&$datainfo); //var_dump($datainfo); //var_dump($rows); input_downloadfile($worksheet, &$rows, $datainfo, $format_column); continue; } //邀请处理 //var_dump($dataindexinfo); inserttable('baseprofile', $dataindexinfo, 1); //var_dump($datainfo); invite_alumni($datainfo); } $workbook->close(); return $rows; }
function process_file($filename, &$tempname) { global $_SGLOBAL; $isfile = 1; $data = new Spreadsheet_Excel_Reader(); $data->setOutputEncoding('UTF-8'); $data->read($filename); $tempname = $_SGLOBAL['timestamp'] . '_download_' . rand() . '.xls'; $filedownload = S_ROOT . './plugin/invite/download/' . $tempname; //初始化一个反馈结果的文件 require_once S_ROOT . './plugin/invite/phpwritexcel/Writer.php'; $workbook = new Spreadsheet_Excel_Writer($filedownload); $worksheet =& $workbook->addWorksheet('Sheet1'); $worksheet->setInputEncoding('UTF-8'); $format_column =& $workbook->addformat(array('Size' => 9, 'Bold' => 1)); //读取结果文件的信息 $rows = 0; $recordindex = array('realname', 'sex', 'birthday', 'otheremail', 'academy', 'startyear', 'collegeid', 'class', 'mobile', 'unit'); $record = array('好友姓名(必填)', '好友性别', '生日(8位)', '邮箱(必填)', '学院', '入学年份', '学号', '班别', '手机(必填)', '所在单位', '备注'); $dataindexinfo = array(); encode_record(&$record); input_downloadfile($worksheet, $rows, $record, $format_column); for ($i = 2; $i <= $data->sheets[0]['numRows']; $i++) { $datainfo = array(); for ($j = 1; $j <= $data->sheets[0]['numCols']; $j++) { $datainfo[$j - 1] = $data->sheets[0]['cells'][$i][$j]; $dataindexinfo[$recordindex[$j - 1]] = $data->sheets[0]['cells'][$i][$j]; } $nopass = checkinfo($datainfo[0], $datainfo[3], $datainfo[8]); if (!empty($nopass)) { $datainfo[$j - 1] = $nopass; encode_record(&$datainfo); input_downloadfile($worksheet, &$rows, $datainfo, $format_column); continue; } $dataindexinfo[inviter] = $_SGLOBAL[supe_uid]; $dataindexinfo[usertype] = '6'; inserttable('baseprofile', $dataindexinfo, 1); invite_alumni($datainfo); } $workbook->close(); return $rows; }