最近要导入一下数据,要把一个我的项目的局部数据导入到另一个我的项目中
采纳laravel的chunkById段落查询方法,一次查问2K,而后批量入库,因为这个表没啥改变,能够间接查问后导入
遇到的问题是,查问后的数据属性是一个数组,要手动组装下能力间接入库,字段有点多,试想能不能间接拿到这个属性数据而后丢到数组里间接入库
查问出的数据是这样
是公有属性
间接 (array)$value 后是这样
那么间接
$arrTemp['x00*x00attributes']应该就能够,试了下的确行
封装下:
public function getProtectedValue($obj, $name) { $array = (array)$obj; $prefix = chr(0).'*'.chr(0); return $array[$prefix.$name];}
截图中x00对应的ASCII码为0,用chr将0的ASCII码转换为字符串,即chr(0)对应ASCII码为x00,而后拼接下*就OK
调整后的代码为
$arrTemp = $this->getProtectedValue($value, 'attributes');