我正在使用Simple HTML DOM Parser从网站中检索特定的div。我使用explode()删除了我不想要的div部分。然后,我想将保留的部分分解为一个新数组,但由于某种原因,它没有按预期编入索引。
为什么我的最后一行没有“echo $ content [0];”打印“整体”而“echo $ content [5];”当整体是第一个字符串时呢?我该如何解决这个问题?
<?php
include_once('simple_html_dom.php');
$html = file_get_html('http://services.runescape.com/m=hiscore_oldschool/hiscorepersonal.ws?user1=Pur');
$content = $html->find('div[id=contentHiscores]', 0)->plaintext;
echo $content;
echo "<br><br><br><br>";
$content = explode("SkillRankLevelXP", $content);
$content = $content[1];
echo $content;
echo "<br><br><br><br>";
$content = explode(" ", $content);
echo $content[0];
?>
答案 0 :(得分:0)
在SkillRankLevelXP和整体之间,有6个空格,但浏览器只显示为1.使用“查看源”菜单,你会看到我的意思。
您可以使用一些RegEx来替换2个或更多空格,只需1个空格,我认为这样可以让您更接近您想要的。
<?php
include_once('simple_html_dom.php');
$html = file_get_html('http://services.runescape.com/m=hiscore_oldschool/hiscorepersonal.ws?user1=Pur');
$content = $html->find('div[id=contentHiscores]', 0)->plaintext;
$content=preg_replace('/ {2,}/', ' ', trim($content));
$content = explode('SkillRankLevelXP ', $content);
$content = $content[1];
$content = explode(' ', $content);
print_r($content);
?>