【问题标题】:Assign global variable's value to class memeber将全局变量的值分配给类成员
【发布时间】:2013-02-13 11:25:52
【问题描述】:

在 CakePHP 项目中工作并卡在一个地方。

配置/bootstrap.php 文件

Configure::write('email_info', nehal@connectech.in);

Config/email.php {我的自定义电子邮件类}

class EmailConfig {
public $default = array(        
    'from' => Configure::read('email_info'),
    'reply' => Configure::read('email_info')    
);}

我知道我只能使用'global'关键字为类外的任何变量赋值,但是如何将配置变量赋值给数组成员的值?

【问题讨论】:

  • 是什么东西不工作或者你的问题到底是什么?
  • 你需要在__construct方法()中这样做,php在初始化属性时只取常量值
  • 是的,问题是我没有恒定的价值。我在配置中有值,并且我想分配给班级成员。我收到语法错误“语法错误:意外:字符串预期:=>,',',';',)”

标签: php cakephp


【解决方案1】:

只需在 __construct 方法中初始化您的属性。 PHP 在初始化属性时只接受字面量。

class EmailConfig {
public $default = array(        
    'from' => Configure::read('email_info'),
    'reply' => Configure::read('email_info')    
);}


class EmailConfig {
  public function __construct() {   
     $this->default['from'] = Configure::read('email_info');
     $this->default['reply'] = Configure::read('email_info');
  }
}

有关更多信息,请参阅此问题:Initializing PHP class property declarations with simple expressions yields syntax error

【讨论】:

    【解决方案2】:

    我不确定,但你可以试试这个。

    class EmailConfig {
      public $default = array(        
       'from' => ${Configure::read('email_info')},
       'reply' => ${Configure::read('email_info')}    
    );}
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-02-24
      • 2023-03-04
      • 1970-01-01
      • 2017-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多