在simple_html_domphp中使用css?
Use css in simple_html_dom php?
我有源代码:
这是普通文本。
<li class="parent">
<a href="#">F</a>
<ul>
<li>xx</li>
<li>xx</li>
......
</ul>
</li>
我想通过 simple_html_dom 获得标签 li:nth-child(1)
的 plaintext
:
$html->find("li.parent li:nth-child(1)")
没有
$html->find("li.parent li",0);
要仅查找 ul
的第一个子项,您可以使用:
$html->find("li.parent li:nth-child(1)")
或
$html->find("li.parent li:first-child")
但是要获得所有 li
,您必须使用这样的循环:
foreach($html->find("li.parent li") as $element)
echo $element->plaintext. '<br>';
您不能将复杂的 css 与简单的 html dom 一起使用。
我建议切换到 this one:
$html = <<<EOF
<li class="parent">
<a href="#">F</a>
<ul>
<li>xxx</li>
<li>yyy</li>
</ul>
</li>
EOF;
require_once('advanced_html_dom.php');
$doc = str_get_html($html);
echo $doc->find("li.parent li:nth-child(2)", 0)->text;
// yyy
我有源代码:
这是普通文本。
<li class="parent">
<a href="#">F</a>
<ul>
<li>xx</li>
<li>xx</li>
......
</ul>
</li>
我想通过 simple_html_dom 获得标签 li:nth-child(1)
的 plaintext
:
$html->find("li.parent li:nth-child(1)")
没有
$html->find("li.parent li",0);
要仅查找 ul
的第一个子项,您可以使用:
$html->find("li.parent li:nth-child(1)")
或
$html->find("li.parent li:first-child")
但是要获得所有 li
,您必须使用这样的循环:
foreach($html->find("li.parent li") as $element)
echo $element->plaintext. '<br>';
您不能将复杂的 css 与简单的 html dom 一起使用。 我建议切换到 this one:
$html = <<<EOF
<li class="parent">
<a href="#">F</a>
<ul>
<li>xxx</li>
<li>yyy</li>
</ul>
</li>
EOF;
require_once('advanced_html_dom.php');
$doc = str_get_html($html);
echo $doc->find("li.parent li:nth-child(2)", 0)->text;
// yyy