我在TYPO3中使用了mailform扩展,但我收到了一个错误:
正在访问静态属性tx_mailform_FE_Handler::$uid作为…中的非静态属性。。。。第88、89行。
在出现错误的文件中,有以下两行吗:
$this->configData = tx_mailform_configData::getInstance($this->uid);
$this->flexform = tx_mailform_configData::getInstance($this->uid)->getFlexform();
这里是getInstance
:
public static function getInstance($uid=0) {
if(empty(self::$instance) || ($uid != 0 && $uid != tx_mailform_FE_Handler::$uid)) {
tx_mailform_FE_Handler::$uid = $uid;
self::$instance = new tx_mailform_FE_Handler(tx_mailform_FE_Handler::$uid);
}
return self::$instance;
}
根据给出的信息,您的代码应该如下所示:
$this->configData = tx_mailform_configData::getInstance(static::$uid);
$this->flexform = tx_mailform_configData::getInstance(static::$uid)->getFlexform();
您试图将静态属性作为非静态属性访问。谷歌搜索self和static关键字。
希望我能帮上忙。:)