在PHP中导入Excel工作表时,我无法区分两个对象

时间:2016-10-03 12:11:00

标签: php excel laravel

我正在尝试使用PHP将Excel工作表导入数据库。当我阅读表格时,我得到不同格式的数据。当只插入一张纸张时,我在单个数组中获取数据,当我插入两张或更多张纸张时,我在两种情况下都以对象格式获得多个数组。所以我无法区分单个数组和多个数组,不能在数据库中插入值。

$path = Input::file('file')->getRealPath();
                $data = Excel::load($path, function($reader)
                {})->get();

这里是我获得的$ data中的单张

我得到了

[ { "id":1,"name":"Nilima" } ]格式和多张纸 [ [ { "id":1,"name":"Nilima" } ], [ ], [ ] ]。但两种反应的类型都是对象。

任何人都可以帮我解决这个问题。我很难解决这个问题。

1 个答案:

答案 0 :(得分:1)

json_decode你得到的结果。

$arr = json_decode($data, true);

然后编写一个函数来检查数组的索引以找到格式。

示例:

function is_multi_sheet_arr($arr){
    if(isset($arr[0][0])){
       return true;
    } else if(isset($arr[0])){
       return false;
    }
}

基于此获取arr元素。

快乐编码