3

您好我正在尝试执行以下 PHP 代码,但是我收到错误消息。我将引用传递给核心类,我想将其分配给类范围内的变量..

注意:数组到字符串的转换

提前致谢..

$core = new core($config);
$core->execute();   

class core
{
   private $config;

   public function __construct(&$config)
   {
      $this->$config = $config;
   }

   public function execute()
   {
      $this->set_path();
   }

   private function set_path()
   {
      return true;      
   }  
}
4

4 回答 4

13

嗯,首先……

$this->$config

应该删除第二个$in ,否则它会尝试使用 .in 中的字符串给出的名称访问变量。(例如,如果 $config作为一个值保存,您将在您的类中访问该变量:)$config$config"test""test"$this->test

无论如何,它什么$config时候被传递?(字符串、数组、对象等?)

于 2010-08-02T16:15:39.213 回答
1

私人 $config = 数组();

于 2010-08-02T16:14:36.807 回答
1

$this->config = $config;

于 2010-08-02T16:19:06.943 回答
0

这在 php 5.2 中没有错误。
你用的是什么版本的php?

<?php
class core
{
   private $config;

   public function __construct(&$config)
   {
      $this->config = $config;
   }

   public function execute()
   {
      $this->set_path();
   }

   private function set_path()
   {
      return true;      
   }  
}

$config=array(
     'a'    => '1'
    ,'b'    => '2'
    );

$core = new core($config);
$core->execute();
于 2010-08-02T16:25:29.073 回答