宝塔山 发表于 2024-6-11 08:37:54

解决使用php将excel数据导入数据库报错问题

今天在用 phpexcel 将数据xlxs数据导入到数据库发现不停报错
Array and string offset access syntax with curly braces is no longer supported
https://img-blog.csdnimg.cn/direct/322cef3543864a3092179d19d3c0a34c.png
百度下发现PHP7.4后面版本,不再可以大概使用花括号来访问数组大概字符串的偏移,而我当前php版本是8.1 没办法根据他这个报错 一步一步找到对应的文件将{} 修改成[] 就可以了
下面列出此中两个地方。具体另有很多地方,需要自己一步一步修改:
https://img-blog.csdnimg.cn/direct/4ad2a60981d4456f81eea1bfc504564a.png
https://img-blog.csdnimg.cn/direct/656f65738bc244e9968183d6f5aed403.png
末了附上我导入数据代码
$file = File::where(['status' => 0])->first();
      if (empty($file)) {
            exit("没有信息采集!");
      }
      $file_path = storage_path('app/public/' . $file->path);;

      $objPHPExcel = \PHPExcel_IOFactory::load($file_path);

      $worksheet = $objPHPExcel->getActiveSheet();

      $startRow = 2;// 从第2行开始读取数据
      $endRow = $worksheet->getHighestRow();
      $endCol = $worksheet->getHighestColumn();

      for ($row = $startRow; $row <= $endRow; $row++) {
            $rowData = $worksheet->rangeToArray('A' . $row . ':' . $endCol . $row, NULL, TRUE, FALSE);
            if (!empty(Redis::get($rowData . '_' . $rowData. '_' . $rowData. '_' . $rowData))) {
                continue;
            }
            $temp = [
                'title' => $rowData ?? '',
                'role_name' => $rowData ?? '',
                'content' => $rowData ?? '',
                'mobile' => $rowData ?? '',
                'province' => $rowData ?? '',
                'city' => $rowData ?? '',
                'created_at' => date('Y-m-d H:i:s'),
                'updated_at' => date('Y-m-d H:i:s'),
            ];
            Redis::set(Redis::get($rowData . '_' . $rowData. '_' . $rowData. '_' . $rowData), 1);
            $inset_data[] = $temp;
      }
      if (!empty($inset_data)) {
            Info::insert($inset_data);
      }
      $file->status = 1;
      $file->save();
      exit("导入完成!");
我修改的包链接在此,compoer phpexecl包到本地之后,直接下载我的包覆盖即可,则不会报错Array and string offset access syntax with curly braces is no longer supported in ***
https://download.csdn.net/download/zhanglili1993/89105629
盼望能帮到你

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 解决使用php将excel数据导入数据库报错问题