在html代码如何添加php代码(php生成HTML文件的类方法)
在html代码如何添加php代码
php生成HTML文件的类方法目的
用PHP生成HTML文档, 支持标签嵌套缩进, 支持标签自定义属性
起因
这个东西确实也是心血来潮写的, 本来打算是输出HTML片段用的, 但后来就干脆写成了一个可以输出完整HTML的功能;
我很满意里边的实现缩进的机制, 大家有用到的可以看看
p.s. 现在都是真正的前后端分离了(vue, nodejs, webpack...), 这个东西喜欢就用, 不喜欢就算了~
支持的标签
html, head, meta, title, body, input, select/option, form, table, li, 注释, 以及 自定义标签(成对出现的标签), 还有一大堆属性(在下边有介绍)
实现
整体
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代码中显示出来
源码
地址: https://gitee.com/myDcool/SummerHtml看其中的test.php文件,是介绍他的用法。
以上就是用php生成HTML文件的类的详细内容,更多请关注开心学习网其它相关文章
- html5支持video的视频格式(解决html5中的video标签ios系统中无法播放使用的问题)
- html5如何使用svg(将SVG图引入到HTML页面的实现)
- html5标签怎么做(html5用video标签流式加载的实现)
- html5canvas曲线图例子(html5利用canvas实现颜色容差抠图功能)
- html5中datalist标签
- html5canvas动画(html5 canvas 实现光线沿不规则路径运动)
- 织梦网址首页如何布局(去掉织梦建站或者仿站时首页访问地址后的index.html)
- html5页面强制刷新(移动端html5判断是否滚动到底部并且下拉加载)
- html怎么使用css居中(HTML+CSS实现单列布局水平居中布局)
- HTML5 播放 RTSP 视频的实例代码(HTML5 播放 RTSP 视频的实例代码)
- html em标签
- html5div例子(html5 外链式实现加减乘除的代码)
- html5中的语义化标签有哪些(详解HTML5常用的语义化标签)
- html5基本标签详解(HTML5 通过Vedio标签实现视频循环播放的示例代码)
- js如何解决iphone异形屏适配(Html5适配iphoneX刘海屏的简单实现)
- html5浏览界面怎么设置(HTML5textarea高度自适应的两种方案)
- 爱情能当饭吃吗(爱情能当饭吃吗说说)
- 白T恤穿法(白t恤)
- 你怎么忘了是说先爱我(你怎么忘了如何爱我)
- 做技术难吗(技术难不难)
- 林心如是谁(林心如是谁演的)
- 泰国安全吗(泰国安全吗2023)
热门推荐
- html5页面布局框架(html5移动端自适应布局的实现)
- Visual Studio 自动添加头部注释
- dedecms会员功能(dedecms注册中文会员无法打开空间的解决方法)
- laravel测试重连数据库(Laravel关系模型指定条件查询方法)
- linux telnet命令使用(Linux telnet命令的使用)
- python中递归方法(Python中最大递归深度值的探讨)
- dede系统静态页面(DEDE登陆后台很慢的原因分析与解决方法)
- css垂直左右居中的方式(css常用元素水平垂直居中方案)
- python栈和队列(Python 实现数据结构中的栈队列)
- 怎么查询端口是否被占用(如何查看某个端口被谁占用)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9