2013-05-21 2 views
0

이것은 매우 부끄럽지는 않을 지 모르지만 이것은 내 문제입니다.PHP의 객체 속성에 반복 추가하기

는이 같은 개체의 반환 된 배열이 ..

Array ( 
    [count_assessor0] => stdClass Object ([assessor0] => 91) 
    [count_assessor1] => stdClass Object ([assessor1] => 3) 
    [count_assessor2] => stdClass Object ([assessor2] => 5) 
    [count_assessor3] => stdClass Object ([assessor3] => 24) 
    [count_verifier0] => stdClass Object ([verifier0] => 91) 
    [count_verifier1] => stdClass Object ([verifier1] => 3) 
    [count_verifier2] => stdClass Object ([verifier2] => 5) 
    [count_verifier3] => stdClass Object ([verifier3] => 24) 
) 

확인을, 각 배열을 볼 수 있고 속성이 숫자 접미사가 있도록. 내가하고 싶은 것은 foreach 루프에서 이러한 접미사를 사용하는 것입니다. 그러나 $ n을 접미어를 $ role에 '추가'하지 않으면 $ n을 객체 속성에 추가 할 때 오류가 발생합니다. 나는이 설명하는 경우

$options = array('Yes - Qualified', 'Yes - Not Qualified', 'No - Working Towards', 'No - Not Working Towards'); 
$roles = array('assessor' => $options, 'verifier' => $options, 'teaching_status' => $options, 'coaching_status' => $options); 

$i = 0 ; 

foreach($roles as $role => $options){ 
    echo ucwords($role); 
    $n = 0 ; 
    foreach($options as $option) { 
     echo $option ; 
     echo $count["count_$role$i"]->$role$n; 
     $n++ ; 
     $i++ ; 
    endforeach ; 
    unset($n) ; 
endforeach ; 

충분히 사람을 도와 드릴까요?

감사합니다.

답변

0

내가 동적 변수 이름 생성을 활용해야한다고 생각, 잘 여기에 설명되어 있습니다 :

$property = ${$role.$n};

:

Dynamic variable names in PHP

그래서 당신의 코드에서 그런 일이 있어야한다

echo $count["count_$role$i"]->$property;

+0

완벽한 덕분입니다. 다음과 같이 괄호를 추가하면됩니다. echo $ count [ "count_ $ role $ i"] -> {$ role $ n}; – bencarter78