#採用laravel的chunkById段落查詢方法,一次查詢2K,然後批量入庫,由於這個表沒啥改動,可以直接查詢後導入
遇到的問題是,查詢後的資料屬性是一個數組,要手動組裝下才能直接入庫,字段有點多,試想能不能直接拿到這個屬性資料然後丟到陣列裡直接入庫
查詢出的資料是這樣(推薦:《php影片教學》)
#是私有屬性
直接(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');
登入後複製