2013-04-26 65 views
0

這是我在PHP已創建的類創建對象的陣列,然後設置成員變量

class userinfo 
    { 
     public $username; 
     public $totalscore; 
     public $userid; 
    } 

下面的代碼是在一個有限的循環,並且i在進入循環之前設置爲0 。而可變user_array被定義爲使用如下代碼的數組:

$user_array = array(); 

(some code here...) 

    $i++; 
    $user_array[i] = new userinfo(); 
    $user_array[i]->totalscore = $stattotal; 
    $user_array[i]->userid = $id; 

出於某種原因,我無法理解爲什麼這不會工作。我需要創建一個對象數組。每個對象都必須包含三個變量。我該如何去做?

謝謝你Adv。您的幫助 !

+0

你明白了什麼,當你'你var_dump'陣列? – silkfire 2013-04-26 09:59:09

+1

它應該是'$ i'在你的對象數組中,'$ user_array [$ i]'。 – Rikesh 2013-04-26 10:00:29

+1

專業提示:在腳本開頭放置'error_reporting(E_ALL)',不要忽略任何顯示的警告。 – Jon 2013-04-26 10:01:04

回答

1

您必須在PHP中的所有變量之前有一個美元符號($i)。

0

您可以使用get_class_vars方法來獲取類的所有屬性

$my_class = new myclass(); 

$class_vars = get_class_vars(get_class($my_class)); 

foreach ($class_vars as $name => $value) { 
    echo "$name : $value\n"; 
} 

來源:http://php.net/manual/en/function.get-class-vars.php