Rumah  >  Artikel  >  pembangunan bahagian belakang  >  typecho - html和php混编问题

typecho - html和php混编问题

WBOY
WBOYasal
2016-08-04 09:20:45837semak imbas

typecho - html和php混编问题
上面的代码是typecho的模板页面 是html和php的混编页面 php代码中含有this 这就比较奇怪了 在这段代码中并没有看到类 哪里来的this这个到底是什么语法 还有在这个页面中看到很多一段一段的php代码 那这一段一段的都可以看做是一整段吗 就是比如在其中一段中定义变量a 然后在另一个php块中可以取到值么 刚刚接触 忘指点

回复内容:

typecho - html和php混编问题
上面的代码是typecho的模板页面 是html和php的混编页面 php代码中含有this 这就比较奇怪了 在这段代码中并没有看到类 哪里来的this这个到底是什么语法 还有在这个页面中看到很多一段一段的php代码 那这一段一段的都可以看做是一整段吗 就是比如在其中一段中定义变量a 然后在另一个php块中可以取到值么 刚刚接触 忘指点

$this代表自身的对象;
$this->$name 是以$name的内容作为对象的属性名称,存取对象属性
比如先指定$name=‘address’;
$this->$name 就等价于$this->address

这个this一般指向应用或框架内核

<code><?php class App
{
    public function view($template, $return = true) 
    {
        ob_start();
        include $template;
        $content = ob_get_contents();
        if ($return) {
            return $content;
        } else {
            echo $content;
        }
    }
}
</code></code>

当控制器显示模板时, 一般会调用

<code>$this->view('模板地址');</code>

而这个模板里面的$this, 指向的就是app类的实例

在php文件里面, 之外的代码都可以看作在echo一个字符串, 各段代码的作用域不是独立的

<code><?php $test = 'hello!world';
?>

html代码

<?php echo $test; //显示hello!world
?></code>
Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn