我有以下代码:
class FanClub_Banner
{
public $img = 'http://www.example.com/museum/images/logo_ver_250.png';
public static function banner_me(array $widget, $positionCode, array $params, XenForo_Template_Abstract $renderTemplateObject)
{
return '<img src="'. $this->$img . '" width="250" height="250" alt="Museum">';
}
}
我收到错误:
Fatal error: Using $this when not in object context in C:\public_html\comunidad\library\FanClub\Banner.php on line 8
如何解决?
由于
答案 0 :(得分:1)
您的静态方法无法访问您的Class属性,一个简单的解决方法是从static
移除public static function
,并且您要使用此方法执行FanClub_Banner fcBanner = new FanClub_Banner();
fcBanner->banner_me(....);
另一种解决方法是将属性设置为静态,以便您拥有public static $img...