ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 多行数据处理 > 说明: 导入多行数据的事件处理。数据量多推荐使用此方法 注意:`rows` 优先级小于 `row` 方法:`rows($callable)` * 参数 **callable** (必须),为 callable 闭包。 ```php rows(function($rows_data){...}); ``` * 参数 * **rows_data** array 类型 当前导入的多行数据,固定参数如下: ```php rows(function($rows_data){ // id 为导入数据行唯一标识 foreach($rows_data as $id=>$data){ // 当前导入数据行对应工作表 $sheet = $data["sheet"]; // 当前导入数据行数据 $row = $data["row"]; ... } ... }); ``` * 返回值:void|array 类型 * 成功:不返回结果 * 失败:返回 array。 例:id=4和5 的数据导入失败了,代码如下: ```php rows(function($rows_data){ .... $error = [ 4=>"姓名格式错误", 5=>"年龄错误", ]; return $error; }); ``` > 示例 代码如下: ```php $builder=YI('demo') ->sheets(["一年级","二年级","三年级","四年级"]) ->rows(function ($rows_data){ $datas = []; for($rows_data as $id=>$data){ $sheet = $data["sheet"]; $row = $data["row"]; $datas[] = ["grade"=>$sheet]+$row; } Db::name('example')->insertAll($datas); }) ```