在模板php文件中,我有数百个这样的代码:
echo str_replace('x','y', $this->load1->view('something'));
我已经用代码替换了那条线:
echo blabla();
并在我的核心库中放置了一个函数:
function blabla(){
return str_replace('x','y', $GLOBALS['this']->load1->view('something'));
}
但它会触发错误:Fatal error...
答案 0 :(得分:1)
在PHP中,$this
引用当前对象。例如:
class MyClass {
protected $attribute;
public function method() {
$this->attribute;
}
public static function staticMethod() {
//$this is not available here because of the static context!
}
}
$this
用于MyClass
。
答案 1 :(得分:1)
Re:您编辑的问题,$this
仅存在于班级中。
您有两种选择:
function blabla($something){
str_replace('x','y', $something);
}
blablah($this->load1->view('something'));
或者,将function blabla() {
放入班级,然后放弃global $this
行。