php导入excel读取内容

php导入excel表,在读取内容的时候,现在还有excel不同版本,根据不同版本做兼容

创建一个html  ,如下

 

<html>
<head>
  <title>批量导入数据</title>
</head>

<body>

<form action="index2.php" method="post" id="form1" enctype="multipart/form-data">
    <input type="file" name="excel" value="导入">
    <button type="submit" class="layui-btn">确定</button>
</form>

</body>
</html>

 

创建一个php  如下

<?php
header("Content-Type: text/html;charset=utf-8");

//$save_files = $_SERVER['DOCUMENT_ROOT'].'/upload';  //pc 电脑版  路径要正确,没有就创建
$save_files = $_SERVER['DOCUMENT_ROOT'].'/mobile/api/upload';  //Linux   这个路径得有权限才可以 设置 0777 
//这个是以年月日新建的文件夹,仅供参考。

//这个是上传文件到需要保存的位置,
$upload_name='excel';
$file_path = $_FILES[$upload_name]["name"];

if(!@move_uploaded_file($_FILES[$upload_name]["tmp_name"],$save_files.'/'.$file_path)){
    $error = "error|上传文件错误.".$save_files.'/'.$file_path;
    print_r($error);
    exit(0);

//$type = isset($_FILES[$upload_name]['type'])?$_FILES[$upload_name]['type']:'';//这个可以注释

$file_name = $save_files.'/'.$file_path;    //获取上传文件的地址名称

require_once "PHPExcel.php";
require_once "PHPExcel/IOFactory.php";
require_once "PHPExcel/Cell.php";


$objReader = PHPExcel_IOFactory::createReader('Excel2007');
if(!$objReader->canRead($file_name)) {
    $objReader = PHPExcel_IOFactory::createReader('Excel5');
    if(!$objReader->canRead($file_name)) return '版本不对';
}

//$objReader = PHPExcel_IOFactory::createReader('excel2007'); //建立reader对象
//$objReader = PHPExcel_IOFactory::createReader('excel5'); //建立reader对象
$objPHPExcel = $objReader->load($file_name);
$sheet = $objPHPExcel->getSheet();
$highestRow = $sheet->getHighestDataRow(); // 取得总行数

$highestColumn_num = PHPExcel_Cell::columnIndexFromString($sheet->getHighestDataColumn());    //列数

//$columns = PHPExcel_Cell::getColumn($highestColumn_num);
$columns = array('A','B','C','D','E','F','G');

$arr_result = array();
$dealer_element = array();

for ($j = 2; $j <= $highestRow; $j++) {
    for ($k = 0; $k < count($columns); $k++) {
        //读取单元格
        $value = $objPHPExcel->getActiveSheet()->getCell($columns[$k] . $j)->getValue();//这个就是获取每个单元格的值

        $value = trim($value);
        if (empty($value)) {
            $value = NULL;
        }
    $dealer_element[$k] = $value;
    //这里可以根据要求,做一些数据的验证
    }

    $arr_result[$j] = $dealer_element;
}

echo json_encode($arr_result);

?>

 

相关资料请下载

链接:https://pan.baidu.com/s/1e0XdFd-YXNLCMgWd_ZGp1A 
提取码:mgzc 
 

请大家多多指教

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

明雨星云

感谢,我会继续创作更优质作品

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值