使用file_get_contents时输出不同

时间:2012-12-09 23:17:33

标签: php file-get-contents

我试图使用PHP的file_get_contents()来获取以下URL的内容 但是输出与使用浏览器时的输出不同。我尝试设置用户代理但是没有用,我也尝试完全模拟我的浏览器所做的HTTP请求,但没有运气。有谁知道什么可以使它工作?使用PHP时,我会进入登录表单 但是当我打开浏览器时,它只会打开时间表:

网址如下:

https://webuntis.a12.nl/WebUntis/Timetable.do?type=1

1 个答案:

答案 0 :(得分:0)

您尝试访问的URI看起来像是需要身份验证。因此,如果您希望PHP为您提出请求,则需要在PHP中实现该身份验证过程。

这可以通过两种方式之一完成。第一个是使用PHP's built in HTTP stream wrappers,在我看来这很容易使用。另一个是使用cURL,这可能是一种瑞士军刀。所以你可能会有点不知所措,但这两个选项在表面上应该是相当微不足道的。

您需要的是将帖子请求发送到该页面上表单中的action属性,然后从您必须从$_COOKIE superglobal中提取Cookie的响应中发送该请求并将其发送到随后的每一个请求。手册中有一些例子我在这里链接。