目的
用PHP天生HTML文档, 支持标签嵌套缩进, 支持标签自定义属性
起因

这个东西确实也是心血来潮写的, 本来打算是输出HTML片段用的, 但后来就干脆写成了一个可以输出完全HTML的功能;
我很满意里边的实现缩进的机制, 大家有用到的可以看看
p.s. 现在都是真正的前后端分离了(vue, nodejs, webpack...), 这个东西喜好就用, 不喜好就算了~
支持的标签
html, head, meta, title, body, input, select/option, form, table, div, 注释, 以及 自定义标签(成对涌现的标签), 还有一大堆属性(不才边有先容)
实现
整体
1.每个标签都对应一个类, 比如 标签<html>, 对应了一个叫html的类
2.标签中有用到的属性, 我都放到了一个类中了, 并供应了方法去获取赋了值的属性
嵌套缩进
每个标签我都设计了一个类, 比如 table 标签, 就有一个叫table的类与之对应
每个类里边一样平常都有以下3个主要成员:
1.本标签的缩进值
2.输出本标签终极字符串的方法, out()
3.给本标签添加子标签的方发, append()
个中append()吸收的是子标签的工具, 在终极调用$html->out()的时候, 每个子标签工具里的out()方法会被依次调用, 缩进值也会从上层类通报到最下层类并累加;
其余, 每个类都包含了属性类(calss attribute ), 每个类的缩进值是从属性类里继续而来的, 以是如果修正了属性类里的缩进量, 所有类的缩进量就随着改变了
你也可以给标签类添加一个自己的缩进值来覆盖统一的缩进值
属性
我这里的方案是定义一个类(calss attribute ), 里边有
1.标签可能拥有的属性
2.对应的setXxx方法
3.组装非空的属性拼成字符串的方法
4.为了不影响下次显示, 会有专门的清空方法, 把之前赋值的属性都清空
这样的话, 在定义标签属性的时候, 须要的就赋上值, 不须要的不赋值就不会在终极的HTML代码中显示出来
源码地址: 传到码云了,看个中的test.php文件,是先容他的用法。
以上便是用php天生HTML文件的类的详细内容,更多请关注其它干系文章!
更多技巧请《转发 + 关注》哦!