2014-01-17 143 views
0

另一个php相关问题 我正在使用file_get_contents从网站(天气)获取信息。 我的代码完成了它应该做的事情。 网站在我想要的部分没有ID或班级名称。所以我使用(DIV)类从它是在Php file_get_contents to echo'd

DIV的我想:

<div class="page-title"> 
    <H1> 
    <label class> Het is vandaag vrij zonnig in </label> 
    <label> Los Angeles</label> 
    <script> ... bla bla bla</script> 

我能得到什么:

Het是在洛杉矶vandaag vrij zonnig {“ScriptUrl”:“http://s7.addthis.com/js/300/addthis_widget.js#pubid=weeronline”,“addthis_config”:{“pubid”:“weeronline”,“ui_language”:“nl”,“data_ga_property”:“UA-3047268-1”,“data_track_clickback”:“true”, “data_ga_social”:“true”}}

这样即可,但我只想要“het is vandaag vrij zonnig in Los Angeles”印。

我该如何做到这一点?

回答

1

如果你知道它的结果总是要在该格式,你可以做

echo substr($string, 0, strpos($string, "{")); 

(假设$string是你在上面给的内容)

+0

首先,快速评论!谢谢。 然而,你的解决方案给了我一切在“{” ,而不是左侧! 如何改变这个? – brian

+0

@brian你确定吗?检查这个http://3v4l.org/0FAZa –

+0

是的,我确定,但我必须输入错误的东西! 因为它现在可以工作! 谢谢帕特里克Q和丹H为您的解决方案,为同样的问题的读者工作! – brian

0

如果我理解正确,你只是想要那个字符串?尝试使用substr?

编辑:网址:http://us2.php.net/substr

+0

是的,我想那个字符串。 使用子串工作 但如果他们改变1参数呢?因为我现在编码: echo substr($ div-> nodeValue,0,-303); – brian

+0

当谈到解析其他人的网站的内容时,这只是生活 - 在那里,做到了。剩下的唯一工作就是让你的发现逻辑更加健壮,但是期望无论如何改变(与url等相同,所有东西都是通配符,不可靠)。简而言之,您所能做的只是在他们的网站上保持最新状态,或者直接询问他们是否可以为您提供不会更改的数据Feed。 –

0

echo htmlspecialchars(file_get_contents...)