PHPExcel 가져오기 내보내기 - 가져오기

3265 단어
지난편에서 우리는 Excel을 내보내는 방법을 말했는데, 이제 가져오는 문제를 해결해야 한다.
1. 프론트 데스크에서 먼저 파일을 업로드하고 업로드한 파일의 새 파일 이름을 되돌려주고 가져오기를 클릭합니다
Excel 업로드

2. AdminbaseController/*** Excel 가져오기 * @param type $Excel_file * @return type/public function importExcel($Excel_file){ error_reporting(E_ALL); date_default_timezone_set('Asia/ShangHai'); vendor("PHPExcel.PHPExcel");/* PHPExcel_IOFactory///Check prerequisites if (!file_exists($Excel_file)) { exit("not found ".$Excel_file.""); }/중요한 코드는 Thinkphp M, D 방법이 호출되지 않는 문제를 해결합니다. 만약thinkphp에서 M, D 방법이 효력을 상실했을 때 다음 코드를 추가합니다 *//spl_autoload_register ( array ('Think', 'autoload' ) );
        $reader = \PHPExcel_IOFactory::createReader('Excel5'); // Excel5 (Excel97-2003 )
        $PHPExcel = $reader->load($Excel_file); //  excel 
        $sheet = $PHPExcel->getSheet(0); //  
        $highestRow = $sheet->getHighestRow(); //     
        $highestColumm = $sheet->getHighestColumn(); //  
        /**   */
        for ($row = 2; $row <= $highestRow; $row++){// 1 
            for ($column = 'A'; $column <= $highestColumm; $column++) {// A 
                $dataset[$row][] = $sheet->getCell($column.$row)->getValue(); //   
                  
//                echo $column.$row.":".$sheet->getCell($column.$row)->getValue()."
"; } } return $dataset; // exit; }

3. AdminGoodsController/*** Excel 읽기 */public function readExcel () {$save_path = "./data/upload/"
    if (IS_POST) {
        $file = I("post.filename");
        $file || $this->error(" Excel !");
        $data = $this->importExcel($save_path.$file); // 
        foreach($data as $str_arr){

            $push = array(
                'good_name'=>$str_arr[0],
                'good_img'=>$str_arr[1],
                'old_price'=>$str_arr[2],
                'price'=>$str_arr[3],
                'shop_url'=>$str_arr[4],
                'ticket_url'=>$str_arr[7],
                'start_time'=>$str_arr[5],
                'stop_time'=>$str_arr[6],
                'read_num'=>0,
                'sale_num'=>1,
                'status'=>1,
                'create_time'=>time(),
                'update_time'=>time(),
            );
            $res = $this->model->add($push);               
        }            
        if ($res) {
            $this->success(" !");
        } else {
            $this->error(" !");
        }
    }
}

4. excel이 가져온 기능을 간결하고 완전하게 소개했으니 좋아하는 친구는 참고하고 공부할 수 있습니다.

좋은 웹페이지 즐겨찾기