$app = new Container;
$document = new OrchestraDocument($app);
$reader = new OrchestraReader($document);
$xml = $reader->load($path);
$xml1 = simplexml_load_file($path);
// print_r($xml1);
$json = json_encode($xml1);
$array = json_decode($json, true);
$clien =$array['cliente'];
//controll empty value
$clien = array_map(function($i) {
$i['indirizzo'] = empty($i['indirizzo']) ? '' : $i['indirizzo'];
$i['cap'] = empty($i['cap']) ? '' : $i['cap'];
$i['citta'] = empty($i['citta']) ? '' : $i['citta'];
$i['prov'] = empty($i['prov']) ? '' : $i['prov'];
$i['piva'] = empty($i['piva']) ? '' : $i['piva'];
$i['cfisc'] = empty($i['cfisc']) ? '' : $i['cfisc'];
$i['luogo_nasc'] = empty($i['luogo_nasc']) ? '' : $i['luogo_nasc'];
$i['data_nasc'] = empty($i['data_nasc']) ? '' : $i['data_nasc'];
$i['sesso'] = empty($i['sesso']) ? '' : $i['sesso'];
$i['tele'] = empty($i['tele']) ? '' : $i['tele'];
$i['mail'] = empty($i['mail']) ? '' : $i['mail'];
$i['cell'] = empty($i['cell']) ? '' : $i['cell'];
$i['cod_card'] = empty($i['cod_card']) ? '' : $i['cod_card'];
$i['cod_card1'] = empty($i['cod_card1']) ? '' : $i['cod_card1'];
$i['punti_card'] = empty($i['punti_card']) ? '' : $i['punti_card'];
return $i;
}, $clien);
$collection = collect($clien);
$collection1 = $collection->chunk(500);
我尝试将大型xml文件导入我的mysql数据库。 我将我的xml文件加载到对象中,我将此对象转换为数组,我控制空值,然后确定。 现在因为我有一个大的查询我一次在laravel集合和chunk中转换我的数组为isert 500记录,但现在我有一个新的对象$ collection1。我如何输入查询?我必须在阵列中再次进行转换?
for($i=0;$i<count($collection1);$i++) {
var_dump($collection1[$i]);
$collection1[$i]= stdToArray;
DB::connection()->disableQueryLog();
DB::table('clientis')->insert($collection1[$i]);
foreach( $collection1[$i] as $k=>$v){
var_dump($v);
}
}
这段代码不起作用