以非静态-Typeo3邮件表单扩展名访问静态属性


Accessing static property as non static - Typo3 mailform extension

我在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关键字。

希望我能帮上忙。:)