摘要:PHP 代码require __DIR__ .'/vendor/autoload.php'; //创建Smarty模板引擎对象 $smarty = new Smarty(); //配置目录:必选 $smarty->setTemplateDir(__DIR__ . '/temp');&nb
PHP 代码
require __DIR__ .'/vendor/autoload.php';
//创建Smarty模板引擎对象
$smarty = new Smarty();
//配置目录:必选
$smarty->setTemplateDir(__DIR__ . '/temp'); //模板目录
$smarty->display('demo4.html');layout---父模板文件
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>{block name="title"}这是页面SEO标题{/block}</title>
</head>
<body>
{block name="nav"}
页面导航
{/block}
{block name="content"}
页面主体内容
{/block}
</body>
</html>主体模板文件
{extends file="layout.html"}
{block name="title"}
{$smarty.block.parent}:我是SEO标题,我很重要的-模板继承
{/block}
{block name="nav"}
{$smarty.block.parent}
<a href="">HOME</a> | <a href="">MEWS</a> | <a href="">PRODUCT</a> | <a href="">CONTACT</a>
{/block}
{block name="content"}
<h2>理解PHP中的stdClass类</h2> {$smarty.block.parent}
<p>相信大家跟我一样,会经常看到和下面很类似的PHP代码:</p>
<div class="">
<PRE>
$user = new stdClass();
$user->name = 'gouki';
</PRE>
</div>
<p>
这样的代码,这是干嘛用的呢?
翻开手册,搜索stdClass,你会发现,手册上几乎没有介绍,如果你再次搜索google,看到的也几乎全是英文解释。
其实,stdClass在PHP5才开始被流行。而stdClass也是zend的一个保留类。似乎没有其他作用。也几乎没有任何说明。
或者,我们可以这么理解:stdClass是PHP的一个基类,所有的类几乎都继承这个类,所以任何时候都可以被new,可以让这个变量成为一个object。同时,这个基类又有一个特殊的地方,就是没有方法。
凡时用new stdClass()的变量,都不可能会出现$a->test()这种方式的使用。
或者,我们可以又这么理解一下,正因为PHP5的对象的独特性,对象在任何地方被调用,都是引用地址型的,所以相对消耗的资源会少一点。在其它页面为它赋值时是直接修改,而不是引用一个拷贝。
</p>
{/block}
批改老师:韦小宝批改时间:2019-01-15 13:00:43
老师总结:写的很棒 作业当做笔记去写了 代码注释写的很清楚 加油吧