如何用php生成html文件?
Admin 2021-05-29 群英技术资讯 1280 次浏览
如何用php生成html文件?小编觉得php生成HTML文件的现实过程比较有意思,因此分享给大家参考参考,感兴趣的朋友可以了解一下,下面我们一起来看看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代码中显示出来
以上就是关使用php生成html文件的相关介绍,对大家理解php生成html文件有一定的帮助,需要的朋友可以参考,希望对大家实现php生成html文件有启发,更多php生成html文件的操作可以关注其他相关文章。
文本转载自脚本之家
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
php获取时间戳和日期格式的方法是什么?在做项目开发的时候,我们经常会遇到获取时间戳的需求,例如获得今日、文周、本月、本年等时间戳,而且对日期格式也是有要求的。对此,下面小编就给大家分享关于php获取时间戳和日期格式的实例,大家可以参考学习。
swoole客户端提供了TCP/UDP socket的客户端的封装代码,使用时仅需new Swoole\Client即可。除了普通的同步阻塞+select的使用方法外,Client还支持异步非阻塞回调。
这篇文章主要介绍了Laravel框架实现的rbac权限管理操作,结合实例形式分析了Laravel框架权限控制rbac相关数据库创建、读写及权限判断等操作技巧,需要的朋友可以参考下
本节介绍PHP if...else语句的使用,通过该语句,你可以有选择性的执行代码片段。条件语句用于根据不同条件执行不同动作。
这篇文章主要介绍php中extract函数,对新手学习和理解extract函数的用处和用法有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章能有所收获,接下来小编带着大家一起了解看看。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008