Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 获取具有静态ID的正在更改的DIV的内容_Php_Html - Fatal编程技术网

Php 获取具有静态ID的正在更改的DIV的内容

Php 获取具有静态ID的正在更改的DIV的内容,php,html,Php,Html,我试图让自己成为一个主页,仅供我个人使用,我想做的是显示来自不同网站的不同信息,这些信息每天变化几次。i、 e.新闻、天气等。我想让我最喜欢的信息随时可见,而不需要访问很多页面。由于许多网站没有在iframe中加载,这是我第一次尝试的,我想PHP可能会对我有所帮助 因此,我需要做的是获取DIV的内容,并使用PHP将其放在我的页面中。 源页面上的DIV是在服务器上生成的,但它始终具有相同的ID 例如: <div id="nowbox"> <a href="http://www.

我试图让自己成为一个主页,仅供我个人使用,我想做的是显示来自不同网站的不同信息,这些信息每天变化几次。i、 e.新闻、天气等。我想让我最喜欢的信息随时可见,而不需要访问很多页面。由于许多网站没有在iframe中加载,这是我第一次尝试的,我想PHP可能会对我有所帮助

因此,我需要做的是获取DIV的内容,并使用PHP将其放在我的页面中。 源页面上的DIV是在服务器上生成的,但它始终具有相同的ID

例如:

<div id="nowbox"> 
<a href="http://www.seznam.cz/jsTitleExecute?id=91&h=19331020">
<img width="135" height="77" src="http://seznam.cz/favicons/title//009/91-JrAEVc.jpg" alt="" /></a> 
<div class="cont"> <ul> <li> 
<strong><a href="http://www.seznam.cz/jsTitleExecute?id=91&h=19331020">Sledujte dnes od 20.00 koncert Tata Bojs</a></strong> 
<p>Nenechte si ujít tradiční benefiční koncert kapely Tata Bojs. Sledujte představení na Seznam.cz</p> </li> </ul> 
</div>
</div> 
并查看页面的所有内容,但我不知道如何剥离所有内容,只留下所需的DIV

我对PHP不是很有经验,所以我非常感谢您的帮助,越容易理解越好

编辑: 谢谢你的回答。基本上,我只是想把我作为示例发布的代码放到一个变量中,这样我就可以在页面的某个地方回显它。问题是,代码与网站的其他部分一样发生了更改,只有一些内容保持不变,即DIV ID。 绝对不是最优雅的解决方案(即使我知道,但由于该网站仅用于我的目的,它也不重要),但我成功地开始工作的一个解决方案是,我通过以下方式获得了整个页面:

$contents = file_get_contents("http://seznam.cz");

然后使用STRPOS加/减我可以手动计数的静态字符数,计算代码中特定唯一位置的字符数。然后我将字符串拆分为数组,并丢弃不需要在字符串开头获取代码开头的部分,然后在代码结束后使用相同的方法剪切字符串。

我无法完全理解您想要实现什么以及为什么,但您可以先通过服务器和客户端来实现,客户端方式:

好的,您需要的是提取DOM的一部分,在客户端使用javascript+jQuery,您可以非常快速地实现这一点,只需调用
$.load(“/mypage\nowbox”)
函数即可

这也可以在服务器端使用php通过使用任何DOM操纵库来实现,可以是捆绑在()中的,也可以是更易于使用的libs(有点内存泄漏)

因此,您可以选择客户端和服务器两种实现方式,选择最适合您需要的方式

请注意,任何CSS规则都不能通过任何一种方法使用,因为CSS不会加载到dom中


祝你好运

如果您想在服务器端执行此操作,我建议您使用

$contents = file_get_contents("http://seznam.cz");
require('phpQuery/phpQuery.php');    
$doc = phpQuery::newDocumentFileXHTML('http://seznam.cz');
$html = pq('#nowbox')->htmlOuter();