2013-10-22 2 views
0

우선 영어 불쌍히 생각해서 죄송합니다.CSF 파일에서로드 할 때 ZF2 TableGateway 반복 값

<?php 
$handle = fopen ("teste.csv","r"); 
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { 
    $user = $this->getServiceLocator()->get('User'); 
    $user->exchangeArray(
     array('firsname'=>$data[0], 
       'lastname'=>$data[1], 
       'email'=>$data[2], 
       'adress'=>$data[3], 
       'phone'=>$data[4] 
      ) 
     ); 
    $userTable = $this->getServiceLocator()->get('UserTable'); 
    $userTable->save($user); 
} 
fclose ($handle); 
?> 

을하지만 항상 같은 값 모든 라인을 거기로가 매번 같은 값을 반복하는 이유를 모르겠어요 .. :

나는이 같은 CSV 목록에서 여러 사용자를로드하는 것을 시도하고있다 서비스 관리자가 항상 저장하기 전에 동일한 개체를 복제처럼.

누구든지 도와 드릴까요 .. 같은데? 특별히

http://framework.zend.com/manual/2.0/en/modules/zend.service-manager.quick-start.html 

참고 부분에 대한로 말한다면

$user = (clone) $this->getServiceLocator()->get('User'); 

서비스 매니저는 새로운 인스턴스마다를 제공합니다 :이 차이가 있는지

답변

0

시도를 확인합니다 공유 서비스. 그러면 서비스 관리자에게 매번 새 User 객체를 원한다고 말하면 위와 같이 객체를 복제 할 필요가 없습니다.

'shared' => array(
     // Usually, you'll only indicate services that should _NOT_ be 
     // shared -- i.e., ones where you want a different instance 
     // every time. 
     'User' => false, 
    ), 
+0

Bulllseye! 고마워요! –

관련 문제