0
phpexcel을 사용하여 대량으로 엑셀을 통해 학생 기록을 보내고 있습니다. json 형식의 API에 게시하고 싶습니다. 출력은 아래에 있지만 API가 저장되는 아래의 형식이 필요합니다. 데이터베이스의 각 데이터. 내 컨트롤러 :웹 api에 phpexcel 삽입 사용하기
$import = new ImportExcel();
if ($import->load(Yii::$app->request->post())) {
//upload path global parameters
Yii::$app->params['uploadPath'] = Yii::$app->basePath . '/web/upload/excel/';
$file = UploadedFile::getInstance($import, 'import');
$path = Yii::$app->params['uploadPath'] . $file;
$file->saveAs($path);
// Include PHPExcel_IOFactory
try {
$inputFileType = PHPExcel_IOFactory::identify($path);
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
$objPHPExcel = $objReader->load($path);
} catch (Exception $e) {
die('Error loading file "' . pathinfo($path, PATHINFO_BASENAME) . '": ' . $e->getMessage());
}
// Get worksheet dimensions
$sheet = $objPHPExcel->getSheet(0);
$highestRow = $sheet->getHighestRow();
$highestColumn = $sheet->getHighestColumn();
$highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn);
$worksheet = $objPHPExcel->setActiveSheetIndexbyName('Sheet1');
$worksheetTitle = $worksheet->getTitle();
// Loop through each row of the worksheet in turn
for ($row = 1; $row <= $highestRow; $row++) {
// Read a row of data into an array
$rowData = $sheet->rangeToArray('A' . $row . ':' . $highestColumn . $row,
NULL,
TRUE,
FALSE);
var_dump(json_encode($rowData));
}
}
출력 :
string(70) "[["name","address","class","section","guardian","contact us","email"]]" string(107) "[["sugam pradhan","rambazar,pokhara-10",10,"A","jayandra kumar rajbhandari",61431910,"[email protected]"]]" string(105) "[["Bill gurung","rambazar,pokhara-10",10,"A","jayandra kumar rajbhandari",61431910,"[email protected]"]]" string(107) "[["Bimal poudelq","rambazar,pokhara-10",10,"A","jayandra kumar rajbhandari",61431910,"[email protected]"]]" string(101) "[["Dam sir","rambazar,pokhara-10",10,"A","jayandra kumar rajbhandari",61431910,"[email protected]"]]"
난에 게시 할 :
[{'school_id':3,'name':'name1','image':'image1','guardian_name':'guardian_name1','address':'address1','contact_no':'111','email':'[email protected]','blood_grp':'A','d_o_b':'2001-01-01','class_id':1,'section_id':2,'roll_no':'1','enrolled_date':'2010-01-01','is_active':0},