laravel의 ChunkById 단락 쿼리 방법을 사용하여 한 번에 2K씩 쿼리한 다음 데이터베이스에 일괄적으로 넣습니다. 쿼리 후 가져올 때 발생하는 문제는
쿼리 후의 데이터 속성이 데이터베이스에 직접 저장되기 전에 수동으로 조립해야 하는 배열이라는 것입니다. 이 속성 데이터를 직접 가져온 다음 배열에 넣고 데이터베이스에 직접 저장할 수 있다고 상상해 보세요.
쿼리된 데이터는 다음과 같습니다(권장: "php 비디오 튜토리얼")
는 개인 속성
직접(배열)$value이고 이렇게
so direct
$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');
로그인 후 복사