PhpSpreadsheet 读取excel文件

phpexcel不再维护,使用PhpSpreadsheet

官方地址
github

安装

composer require phpoffice/phpspreadsheet

例子

class Vcard
{
    public function index()
    {
        $file_name = "1";
        $uploadwork    = "C:\Users\Administrator\Desktop\城市\二线城市(30个)27575条\\";
        $uploadfile    = $uploadwork.$file_name.'.xlsx';
        $reader        = \PHPExcel_IOFactory::createReader('excel2007'); //设置以Excel5格式(Excel97-2003工作簿)
        $PHPExcel      = $reader->load($uploadfile); // 载入excel文件
        $sheet         = $PHPExcel->getSheet(0); // 读取第一個工作表
        $highestRow    = $sheet->getHighestRow(); // 取得总行数
        $highestColumm = $sheet->getHighestColumn(); // 取得总列数
        $data          = [];
        for ($row = 2; $row <= $highestRow; $row++) //行号从1开始
        {
            for ($column = 'A'; $column <= $highestColumm; $column++) //列数是以A列开始
            {
                if (empty($sheet->getCell($column . $row)->getValue()) == false) {
                    if (empty($data[$row]) == false) {
                        $str = $sheet->getCell($column . $row)->getValue();
                        if (strlen($str)>11) {
                            $pieces = explode("|", $str);
                            $data[$row]['mobile'] = $pieces[0];
                        }else{
                            $data[$row]['mobile'] = $str;
                        }
                    } else {
                        $data[$row]['name'] = $sheet->getCell($column . $row)->getValue();
                    }
                }
            }
        }
        // dump($data);
        $myfile = fopen($uploadwork.$file_name.".vcf", "w") or die("Unable to open file!");
        foreach ($data as $key => $value) {
            $all_str = $this->make_vcard($value['name'], $value['mobile']);
            fwrite($myfile, $all_str);
        }
        fclose($myfile);
    }
}

猜你喜欢

转载自blog.csdn.net/hd2killers/article/details/80826981