我正在阅读一个typo3扩展文件:
class.tx_jcjob_pi1.php
...
$this->template = $this->cObj->fileResource($this->conf['templateFile']);
...
class.tslib_pibase.php
...
var $cObj;
...
class.tslib_content.php
...
function fileResource
...
问题:
这条线如何运作:$this->cObj->fileResource($this->conf['templateFile']);
?
没有这样的代码:例如$cObj = new tslib_cObj()
,$cObj
是如何实例化的?
没有像require_once('class.tslib_content.php');
这样的代码$this->cObj
如何使用class.tslib_content.php
中的方法?
答案 0 :(得分:1)
这一切都是在插件代码执行之前由Typo3的页面渲染器完成的。
因为插件extends pi_base
的类和pi_base是由Typo3实例化的,所以很多函数都已经可以利用了。
因此,如果您没有扩展pi_base,$this->cObj
就不会存在,并且您需要自己创建它,例如:
$cObj = t3lib_div::makeInstance('tslib_cObj');