2012-06-12 6 views
0

죄송합니다. 너무 명확하지만 너무 길어서 지금 어떻게 할 지 생각할 수 없습니다.PHP : 객체 반복하기

나는이 :

$objectPerson = new Person(); 
$objectPerson->setName($arrayName); 
$objectPerson->setLastName($arrayLastName); 
$arrayPerson = array(); 
$arrayPerson[] = $objectPerson; 
$objectMainClass->setArrayPerson($arrayPerson); 

$arrayName$arrayLastName$_REQUEST에서 오는 두 개의 요소를 각각 가지고있다 : 존, 장과 스미스, 테일러

내가 가지고 내 데이터베이스 테이블에 나중에 $objectMainClass을 저장합니다 이 구조 :

그러나 코드가 지금은 방식으로, 나는 존, 같은 마지막 이름 필드에 이름 필드 진 스미스, 테일러 :

Id | Name  | LastName 
------------------------------- 
1 | John, Jean | Smith, Taylor 

내가 얻을 수있는 일 :

Id | Name | LastName 
-------------------- 
1 | John | Smith 
2 | Jean | Taylor 

?

나는 위의 코드에서 foreach를 사용해야한다는 것을 알고 있지만, 나는 그렇게하는 방법에 대해 생각할 수 없다.

덕분에 많은

+0

HTTP : //php.net/manual/en/control-structures.foreach.php – PeeHaa

답변

1

내가 코드의 일부 오류를 수정했지만,이 작업을해야합니다

$arrayName = 'john,joe'; 
$arrayLastName = 'Smith,Shmoe'; 


$names = explode(",", $arrayName); 
$lastNames = explode(",", $arrayLastName); 

$arrayPerson = array(); 
// I don't know how the actual array and object is used in your 
// application, but based on context, I added your functionality 
for ($i = 0; $i < count($names); $i++) 
{ 
    // assuming $names and $lastNames are the same length 
    $name = $names[$i]; 
    $lastName = $lastNames[$i]; 

    // act on $name and $lastname however you want 
    $objectPerson = new Person(); 
    $objectPerson->setName($name); 
    $objectPerson->setLastName($lastName); 
    array_push($arrayPerson, $objectPerson); 
} 

$objectMainClass->setArrayPerson($arrayPerson); 
+0

감사합니다. – user523129

-1

의 Foreach ($로 $ 객체 키 => $ 값) {