php - 输入字段中的简单 HTML DOM 解析器
问题描述
我试图从 DOM 解析器中获取所有结果,但我只得到输入字段中的最后一个标签。如果我回显 $link 不是问题。有没有一种解决方案可以像我从回声中一样获取所有文本?
<?php
include_once('simple_html_dom.php');
// Create DOM from URL or file
$link = "https://www.sofascore.com/fr/sevilla-real-betis/qgbsIgb";
foreach ($html->find('div.Header__Main-sc-1dyxed1-0.hkVBhG ul li') as $element){
$links = $element->find('a');
foreach ($links as $link) {
echo $link->plaintext.'<br/>';
}
}
?>
<input type="text" name="name" value="<?php echo $link->plaintext?>"><br>
这是github:https ://github.com/inbazhlekov/domm
我希望输入字段中的值为:“Football Espagne LaLiga”,而不仅仅是“LaLiga”。
解决方案
该循环将覆盖它们各自循环的每次迭代$element
。$link
如果要在循环后访问所有值,则需要将值存储在变量中。
您可以将它们存储在一个数组中:
$link = "https://www.sofascore.com/fr/sevilla-real-betis/qgbsIgb";
// Initiate the array we'll use to store the values
$name = [];
foreach ($html->find('div.Header__Main-sc-1dyxed1-0.hkVBhG ul li') as $element){
$links = $element->find('a');
foreach ($links as $link) {
// Push the values into our array instead of echoing them
$name[] = $link->plaintext;
}
}
?>
当你想输出它时,用空格作为分隔符来分解数组:
<input type="text" name="name" value="<?= implode(' ', $name) ?>"><br>
推荐阅读
- node.js - mongodb nodejs 在一个地方捕获所有错误
- python - 熊猫:群体之间的差异
- cmake - 使用自定义二进制路径和自定义工作目录将自定义目标(make)添加到 CLion
- bash - 捕获 RSpec “错误发生在示例之外”
- typescript - TypeScript 严格的枚举检查
- c# - Unity UI 元素使用 iTween 移动动画
- ios - 如何在课堂外访问 IBOutlet?
- swift - QLPreviewController 关闭后如何删除文件?
- ios - 如何在 CGContext 中绘制字符串?
- f# - 如何使用 int f# 添加浮点数