[英]Is it possible to define a class property dynamically in php?
我有一個類似的類定義:
class JConfig {
var $offline = '0';
var $editor = 'tinymce';
var $list_limit = '20';
var $helpurl = 'http://help.joomla.org';
var $log_path = '/path/to/logs';
// ....
}
我想動態定義'$ log_path'
我試圖在類聲明之外定義一個常量,但是沒有運氣
例:
if(!defined('ROOT_PATH')){
define('ROOT_PATH', dirname(__FILE__));
}
class JConfig {
var $offline = '0';
var $editor = 'tinymce';
var $list_limit = '20';
var $helpurl = 'http://help.joomla.org';
var $log_path = ROOT_PATH . '/logs'; // This generates a error
// ....
}
但是我不能這樣做,有沒有辦法做到這一點?
您可以在類構造函數中完成此操作
class JConfig {
var $offline = '0';
var $editor = 'tinymce';
var $list_limit = '20';
var $helpurl = 'http://help.joomla.org';
var $log_path;
public function __construct(){
$this->log_path = ROOT_PATH . '/logs';
}
}
不,您不能在類屬性默認值中使用常量或變量。 我建議您只在構造函數中設置它們。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.