用php生成HTML文件的类
用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相关知识,请拜访PHP中文网!
以上就是用php生成HTML文件的类的具体内容,更多请关注百分百源码网其它相关文章!