PHP DOMDocument:如何选择特定标签下的所有链接

2023-11-30

我刚刚开始使用 php DOMDocument 并且遇到了一些麻烦。 我如何选择特定节点下的所有链接节点

在 jquery 中我可以简单地做.. $('h5 > a') 这会给我 h5 下的所有链接。

我如何使用 DOMDocument 方法在 php 中执行此操作? 我尝试使用phpquery但由于某种原因它无法读取我试图解析的 html 页面。


据我所知,jQuery 将选择器查询重写为 XPath。 jQuery 可以选择任何节点,XPath 也可以。

h5 > a表示选择任意a直接父节点是的节点h5。这可以很容易地转换为 XPath 查询://h5/a.

因此,使用 DOMDocument:

$dom = new DOMDocument;
$dom->loadHTML($html);

$xpath = new DOMXPath($dom);
$nodes = $xpath->query('//h5/a');

foreach ($nodes as $node) {
   // do stuff
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP DOMDocument:如何选择特定标签下的所有链接 的相关文章

  • PDO语法错误

    我在一个项目中使用 PDO 但提交时出现语法错误 这是我的代码
  • 如何在 PHP 中从字符串类名实例化? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 如何创建返回方法名称的新实例 不幸的是我收到这个错误 错误 类名必须是有效的对象或字符串 这是我的代码 class Foo public f
  • PHP 从命令行启动 gui 程序,但 apache 不启动

    首先 我阅读了有类似问题的人的一些帖子 但所有答案都没有超出导出 DISPLAY 0 0 和 xauth cookies 这是我的问题 提前感谢您的宝贵时间 我开发了一个小库 它使用 OpenGL 和 GLSL 渲染货架 过去几天我将它包装
  • php中的$$是什么意思? [复制]

    这个问题在这里已经有答案了 变量后面的两个背对背 是什么意思 像这样 id 我在哪里可以找到更多相关信息 谢谢 In PHP 意味着您将给至少一名维护程序员带来多年的痛苦和折磨 请注意 您最终可能会成为维护程序员 它是一个可变变量 想象一下
  • 无法在jspdf中加载多个图像

    我正在尝试加载动态生成的多个图像 我想将这些图像转换为 PDF 格式 HTML 代码如下
  • 在 Laravel 中的编辑表单上获取选定选项

    我的网站订单有一个可编辑的表单 并且有以下字段 User quantity note status 我在此表单中还有其他选项 但只有这些字段对我来说很重要 以便能够获取默认值 例如 我希望能够查看用户默认订购的数量 然后我可以更改它或保留它
  • Zend Framework 中的动态默认模块

    有谁知道在 Zend Framework 中动态设置默认模块并且不会遇到命名空间问题的方法 例如 我想要做的是有一个允许加载的模块表 其中一个设置为默认模块 例如 我可能有 admin blog calendar 作为可以加载的模块 如果我
  • PHP - 警告:strpos() [function.strpos]: 空分隔符是什么意思?

    警告 strpos function strpos 空分隔符是什么意思 我有这个 if strpos 039 text false text str replace 039 text 猜测一下 我会说 text是一个空字符串 感谢马克指出细
  • 纯基于网络的版本控制系统

    我的托管服务当前不允许在其服务器上运行 允许 svn git cvs 我真的希望能够将我的开发计算机上的当前源代码与我的生产服务器 同步 我正在寻找一个纯php python ruby版本控制系统 不只是一个client对于版本控制系统 不
  • PHP DOM - 剥离 span 标签,保留其内容

    我希望采用如下标记 span class test Some text that is strong bolded strong and contains a a href link a span 并在 PHP 中找到剥离跨度的最佳方法 剩
  • 从 php 执行 bash 脚本并立即输出回网页

    我有一组 bash 和 Perl 脚本 开发在 Linux Box 上部署所需的目录结构 可选 从svn导出代码 从这个源构建一个包 这在终端上运行良好 现在 我的客户请求此流程的 Web 界面 例如 某些页面上的 创建新包 按钮将一一调用
  • Laravel 登录后重定向回来

    登录后如何重定向返回页面 在 Laravel 5 2 中 认证控制器 protected redirectTo 重定向用户
  • 合并 2 个数组并合并数字键的结果

    我有 2 个数组 我希望通过每个数字键将其中合并 分组在一起 例如 Array1 2009 gt 131 2008 gt 940 2007 gt 176 2006 gt 1 Array2 2008 gt 9 2007 gt 3 我希望输出是
  • php oracle客户端oci8安装出现什么问题

    我尝试了安装 PHP Oracle 客户端的所有过程 1 我安装了客户端版本8和32位 2 我在php ini中取消了oci的注释 3 重新启动Wamp 4 不确定是否真的安装 但我在 php ini 中得到了引用 5 但仍然无法连接 泰汉
  • PHP Intl 扩展线程安全吗?

    我一直在阅读有关 PHP 中的语言环境的内容 看起来setlocale 线程有问题 我对线程不太熟悉 文档提到它不是线程安全的 我想让我的项目能够处理某些数字格式 并且 Intl 扩展似乎很有趣 http php net manual en
  • PHP LDAP 查询获取特定安全组的成员

    我正在努力让 LDAP 查询工作来为我提供安全组的成员 我们的活动目录结构设置为 DC domain DC co dc uk然后 我们有一个名为 公司用户 的 OU 其中有一个用于 IT 和标准的 OU 在这些中我们创建了用户 所以我被设置
  • 使用 MYSQL 将 h:mm pm/am 时间格式插入数据库

    我正在尝试将以 h mm am pm 格式写入的时间插入到存储为标准 DATETIME 格式 hh mm ss 的数据库中 但我不知道如何将发布的时间转换为标准格式所以数据库会接受它 这是我到目前为止一直在尝试的 title POST in
  • 点击 %40 变为 %2540

    当单击包含 符号的链接时 该网址给我 40 这就是我想要的 但是一旦我点击它 一秒钟后它就在我点击后变成了 2540 单击是在电子邮件内 然后定向到网站 其中 40 更改为 2540 我怎样才能让它停止变化 它现在得到这样的参数 email
  • 使用 ImageMagick (PHP) 将 2 个图像并排合并为 1 个图像

    我认为这是一件容易的事 我有 2 张图片 JPG 我希望它们合并成一张图片 其中 2 张图片并排 所以我有图片 A 和图片 B 我想要图片 AB 并排 两个图像具有相同的宽度和高度 在本例中 宽度 200px 高度 300px 但是第二个图
  • 禁用 WooCommerce 手动/编辑订单的电子邮件通知

    需要 WooCommerce 专业知识 我需要禁用手动创建的订单的电子邮件通知 我必须使用处理状态 由于处理订单状态的自定义挂钩 我无法创建自定义状态 理想情况下 手动订单页面中可以勾选一个复选框 勾选后 它将禁止在每种状态下向客户发送电子

随机推荐

  • MiGLayout 不会向下展开 JPanel

    我相信你们中的一些人知道 我正在尝试制作一个开源的 Tiled 替代工具 我之前问过我应该使用什么布局 有人建议我使用 MiGLayout 我真的很喜欢它 但根本不明白 我也希望能从中学到一些东西 我希望有人向我解释我做错了什么 以及我需要
  • gc 后存储库大小不会减少

    我尝试减少我的仓库大小并将其推送到远程new remote 我尝试的是 创建一个新分支git checkout orphan clean git rm cached清理那些大文件 进一步清洁参考git reflog expire expir
  • GNU make - 将每个先决条件转换为目标(隐式)

    我还有一个make类似的工具 在解析我的 makefile 后生成 XML 作为工件 然后我将使用 Python 进一步处理该文件 如果我可以的话 它会让我的事情变得简单很多make将每个先决条件视为实际目标 因为其他工具 会将每个文件分类
  • 安装 Android Studio 时无法安装 SDK 工具组件

    我刚刚下载了最新的 Android studiohttps developer android com studio index html 683MB 安装这个程序时 它没有给我一个选择 Android SDK 的选项 这是一个非常重要的组
  • rCharts 闪亮:宽度有 2 个图表

    我有一个带有两个 Highcharts 图的应用程序 当我启动应用程序时 两个图的宽度是正确的 但是每次我更改mean输入 第一个图的宽度设置为第二个图的宽度 如下所示 当我启动应用程序时 当我更改输入时 我生成应用程序的代码 librar
  • 如何在 JavaScript 中使用异步生成器?

    我有一个 api 它将返回一个游标以获取更多数据 我这样嘲笑它 function fetch n return Promise resolve results n next next lt 10 n 1 我想做的是弄清楚如何使用 async
  • 使用 JDBC 在 localhost 连接 oracle 11G 时出错

    import java sql public class one public static void main String args Connection conn null Statement stmt null try Class
  • Scrapy 错误:下载时出错 - 无法打开 CONNECT 隧道

    我写了一个蜘蛛来爬行https tecnoblog net categoria review 但是当我让蜘蛛爬行时 出现一个错误 2015 05 19 15 13 20 0100 scrapy INFO Scrapy 0 24 5 star
  • 如何将 IOS 徽章通知颜色从默认的红色更改为其他颜色?

    默认 APNS 允许在我们的应用程序图标顶部的红色背景中显示一个数字 徽章 以表明有新通知 有没有办法根据后端服务器输出将红色背景更改为任何其他颜色 我认为公共 iOS SDK API 不可能做到这一点
  • 使用 inpout32.dll 将 Visual Basic 并行端口应用程序转换为 Delphi

    我得到了这个简单的 VB 应用程序和库 我被告知可以打开连接到 0x378 基地址的打印机端口的门 旋转样式 Inp and Out declarations for port I O using inpout32 dll Public D
  • 如何编写 bigint 库/libgmp 如何工作?

    我知道各种平台上有许多用于 C 的 BigInt 库以及如何使用它们 但我很好奇 它们是如何工作的 我将如何构建自己的库 我不会尝试 没有必要重新发明轮子 但我对它如何发生感兴趣 任何人都可以向我指出可以解释程序 基础知识的教程等吗 Tha
  • 我如何从数据集中选择最小值和最大值

    我想从数据集中检索最小值和最大值 这些值在 for 循环中用于在面板中显示标题 String sql select title song id from up song where Song type Mp3 Tracks SqlDataA
  • 如何分块迭代列表

    我有一个 Python 脚本 它接受一个整数列表作为输入 我需要一次处理四个整数 不幸的是 我无法控制输入 或者我会将其作为四元素元组列表传递 目前 我正在以这种方式迭代它 for i in range 0 len ints 4 dummy
  • Git 存储库中的悬空提交和 blob 是什么?它们来自哪里?

    我正在寻找有关悬空提交和 blob 的基本信息 我的存储库看起来不错 但我跑了git fsck第一次看到它做了什么 我有一长串 悬空斑点 和一个 悬空提交 这些是什么东西 哪儿来的呢 它们是否表明我的存储库状态有任何异常 好或坏 在使用 G
  • 以编程方式快速编写 JSON 文件

    im making quiz app and I want to download questions from server in JSON file parse it and make question object that I wi
  • c#:如何使用winspool_drv 监控打印作业

    最近在做一个系统监控工具 为此 我需要一个类来监视打印作业 比如打印什么时候开始 是否成功 打印了多少页 我知道我可以使用winspool drv 来做到这一点 但不知道如何 我进行了广泛的搜索 但没有运气 任何代码 建议都可能非常有帮助
  • Travis CI 如何缓存 Gradle 依赖项?

    In 关于缓存依赖项的 Travis 文档 它提到 缓存的目的是使安装特定于语言的依赖项变得简单快捷 因此与 Bundler pip Composer npm Gradle Maven 等工具相关的所有内容都应该放入缓存中 安装速度快但下载
  • Xamarin Ios - 仅在一侧创建圆形按钮

    我目前正在为 Xamarin Ios 开发一个应用程序 并且正在努力寻找一种方法将圆形边框应用于 UIButton 类型按钮的一侧 你可以这样做 IOS 11 0 yourLabel Layer CornerRadius 5 set rad
  • 使用动态变量作为对象文字,jQuery 动画函数

    本来我有 targetWater animate width 100 现在我想动态使用 宽度 或 高度 var direction targetWater hasClass x width height targetWater animat
  • PHP DOMDocument:如何选择特定标签下的所有链接

    我刚刚开始使用 php DOMDocument 并且遇到了一些麻烦 我如何选择特定节点下的所有链接节点 在 jquery 中我可以简单地做 h5 gt a 这会给我 h5 下的所有链接 我如何使用 DOMDocument 方法在 php 中