特殊之处_HTML标签输出

本框架没有传统的模板概念(template),你会看到很多这样的代码:

	echo _div('aaa','background:red;height:200px;','bbb=ccc');
        echo 111;
    echo _div_();

	echo _div__('xxx','background:aqua;height:200px;','yyy=zzz',222);//注意:这个_div__是2个底杠结尾,最后一个参数直接制定了标签内的内容

以上代码等同于输出:

<div bbb=ccc class='aaa' style='background:red;height:200px;' >111</div>
<div yyy=zzz class='xxx' style='background:aqua;height:200px;' >222</div>

类似的函数还有a,span,b,s等很多,当然你也可以自行扩展
系统自带检测,如果html的标签没有正确闭合(比如你写了_div,但是没有写_div_),前台会报错

为什么要这样?

网页发展到今天早已不是单纯的静态页面了,一个页面的生成背后可能会有很多复杂的逻辑
如果用传统的<if><else>之类去嵌入模板的思路去做的控制会有很多掣肘的地方,比如vue中的<v-if>,<v-foreach>官方也不推荐同时使用,会有冲突
同时如果用<if><else>之类还要再定义一种语法,而通常这种语法都有一定的缺陷
php就是专门用来输出文字的语言,把标签打散成小的函数,控制逻辑,传入参数什么的都很方便,同时得益于现在php即时编译,opcache技术等,效率也没有问题

不便之处

比如_div,和_div_通常是成对出现的,没有任何一个编辑器能够识别出这两个函数的关系,建议的解决方案是用搜狗输入法的自定义短语功能,当我用搜狗输入法打上'div'的时候,搜狗输入法会给我匹配出成对的函数