我正在寻找在PHP中操纵HTML的好方法.例如,我目前遇到的问题是处理格式错误的HTML.
我得到的输入看起来像这样:
This is some text正如您所注意到的,HTML缺少结束标记.我可以使用正则表达式或XML Parser来解决这个问题.但是,我将来可能不得不进行其他DOM操作.我想知道是否有任何好的PHP库处理DOM操作类似于Javascript处理DOM操作的方式.
1> ceejayoz..:PHP具有PECL扩展,可让您访问HTML Tidy的功能.Tidy是一个非常强大的库,它应该能够以这种方式获取代码并以智能方式关闭标签.
我用它来清理导入之前由分类广告系统发送给我的格式错误的XML和HTML.
2> 小智..:我发现PHP Simple HTML DOM是最有用和最直接的库.我会说比PECL更好.
我写了一篇关于如何使用它来抓取myspace艺术家巡演日期的文章(只是一个例子.)这里是php简单html dom解析器的链接.
推荐阅读
如何解决《如何在Swift项目中导入LinkedInSDK?》经验,为你挑选了1个好方法。 ... [详细] 如何解决《如何在Maven中使用Joda-Time?》经验,为你挑选了1个好方法。 ... [详细] 如何解决《压缩输出tiff与g4压缩》经验,为你挑选了1个好方法。 ... [详细] 如何解决《用引号加入python》经验,为你挑选了1个好方法。 ... [详细] 如何解决《如何将CString转换为整数和浮点数?》经验,为你挑选了1个好方法。 ... [详细] 如何解决《使用硒加载铬延伸》经验,为你挑选了3个好方法。 ... [详细] 如何解决《允许在websphere中进行偶然的多部分解析?》经验,为你挑选了1个好方法。 ... [详细] 如何解决《如何使用roslyn(CodeFixProvider)添加新区域》经验,为你挑选了1个好方法。 ... [详细] 如何解决《Instant.readObject方法"防御恶意流"是什么意思?》经验,为你挑选了1个好方法。 ... [详细] 如何解决《为什么这个json解码打印到屏幕?》经验,为你挑选了1个好方法。 ... [详细] 如何解决《将JSON反序列化为对象》经验,为你挑选了1个好方法。 ... [详细] 如何解决《从设置活动中导航回来》经验,为你挑选了1个好方法。 ... [详细] 如何解决《NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE》经验,为你挑选了1个好方法。 ... [详细] 如何解决《带有lambda表达式的invokeAndWait在静态初始化程序中永远挂起》经验,为你挑选了0个好方法。 ... [详细] 如何解决《如何在派生类中重写模板类的静态方法》经验,为你挑选了1个好方法。 ... [详细] 如何解决《如何使用MaterialiseCss创建自动完成表单?》经验,为你挑选了1个好方法。 ... [详细] 如何解决《"捕获"如何在原生Promise链中发挥作用?》经验,为你挑选了1个好方法。 ... [详细] 如何解决《点击列表中的一个视图和不同位置的其他视图自动工作?》经验,为你挑选了1个好方法。 ... [详细] 如何解决《页面之间丢失的PHP会话-根据服务器的不同而表现不同》经验,为你挑选了1个好方法。 ... [详细] 如何解决《如何从最近的任务中杀死应用程序后重新启动服务》经验,为你挑选了1个好方法。 ... [详细]吐了个 "CAO" !Tags | 热门标签RankList | 热门文章
- 1在python中使用递归来反转列表
- 2禁用在PM2中重新启动
- 3ESAPI - 使用禁止的依赖项获取NoClassDefFoundError(LoggerFactory)
- 4JAXB不会为枚举生成枚举
- 5在Android HTML5播放器中开始播放所需的用户手势
- 6ImportError:动态模块没有定义模块导出函数(PyInit__caffe)
- 7Bash提示脚本
- 8水平RecyclerView与开始填充
- 9UIStackview具有不同对齐的子视图
- 10如何使用Laravel将身份验证从一个用户切换到另一个用户
- 11微服务:分解基于图形数据库的应用程序
- 12Facebook Instant Articles错误"HTML元素不包含任何文本:避免包含空HTML元素"
- 13在卫兵中使用功能时的二郎"非法守卫表达"
- 14添加剂,半添加剂和非添加剂措施之间的区别是什么
- 15使用Composer安装高级Wordpress主题
- 16关于C++中的复制控制
- 17HTTP状态403 - 未找到预期的CSRF令牌.你的会话已经过期了吗?
- 18将cURL转换为Guzzle POST
- 19在自定义UIView中添加自动布局约束代码的位置
- 20为什么我的swagger.json是空的? - RestEasy,Wildfly上的Java
DevBox开发工具箱 | 专业的在线开发工具网站 京公网安备 11010802040832号 | 京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有