#1 chouming
代码如下:
class CHtml{
var $theme = "";
public $var;
function __construct() {
$this->theme = $GLOBALS['G_SP']['params']['themes'];
$this->var = "hello";
}
public function index(){
$out = $this->var;
return $out;
}
}
在模板中使用:
输出的结果为:
Fatal error: Undefined class constant 'theme' in D:\PHPnow\htdocs\sp\template\default\main_index.htm on line 9
Jake求助
2010-06-28 15:10:19
#2 extinct
class CHtml {
//var $theme = "";
public static $test="aaaa";
public function __construct() {
$this->theme = $GLOBALS['G_SP']['params']['themes'];
self::$test = "hello";
}
public static function get_t() {
// $out = $this->theme;
return self::$test;
}
}
echo CHtml::get_t();
?>
有空,就帮你测试了一下,这样是可以的
不过__construct()在这里赋值是行不通,因为类没有实例化
这里$this也只能用self::替代了
如果你要用 CHtml::这种方式的话,据我的能力,只能这样了
要不可以用$cHtml = new CHtml()这种
2010-06-28 16:09:05
#3 jake
静态类没有实例化,所以静态类的成员变量不能这样直接用。静态类的方法倒可以
2010-06-28 18:52:25