2014-02-21 54 views
4

我有一个数组,我希望它的值为“public $ somevariable”。这是我的功能,它看起来像。数组公共变量在PHP中

public function __construct(){ 
     global $database; 
     $result = $database->query("SHOW COLUMNS FROM ".self::$tabel_name.""); 
     if (!$result) { 
      echo 'Could not run query: ' . mysql_error(); 
      exit; 
     } 
     if (mysql_num_rows($result) > 0) { 
      $attributes_var = array(); 
      while ($row = $database->fetch_array($result)) { 
       $attributes_var[] = $row[0]; 
      } 
     } 
     foreach($attributes_var as $key) 
     { 
      public $$key; 
     } 
    } 

但它显示“public $$ key”的语法错误。我想使用动态生成的变量作为公共变量,并希望在类之外使用它们。

有什么建议吗?

谢谢!

回答

6

你可以像下面这样做,默认值是null

foreach($attributes_var as $key) 
{ 
    $this->{$key} = null; 
} 
+0

谢谢!有效。 – user3201500