【发布时间】:2017-04-21 07:23:41
【问题描述】:
我一直在互联网上试图找到解决我的具体问题的方法,但没有运气。
基本上我有一个我登录的 URL,看起来类似于: https://some-website.university.edu.au:8781/elements/v4.9/users/
这将向浏览器返回一个包含所有用户的 XML 文本块。
我希望使用 curl 或 SimpleXMLElement() 或任何将 XML 带入我的 php 变量并输出它的方法。
我觉得最接近的是:
$username = 'usernameX';
$password = 'passwordX';
$URL = 'https://some-website.university.edu.au:8781/elements/v4.9/users/';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$URL);
curl_setopt($ch, CURLOPT_TIMEOUT, 30); //timeout after 30 seconds
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($ch, CURLOPT_USERPWD, $username.":".$password);
$result=curl_exec ($ch);
$status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); //get status code
echo $result;
或
$url = 'https://usernameX:passwordX@some-website.university.edu.au:8781/elements/v4.9/users/';
echo $url."<br />";
$xml = new SimpleXMLElement($url);
print_r($xml);
我不确定两者是否接近,或者 curl 是否比 SimpleXMLElement() 更好,或者其中一个或两者永远不会起作用。
我添加了一个屏幕截图来显示网站上返回的内容。登录屏幕只是浏览器的默认屏幕。任何帮助都会很棒。谢谢!
【问题讨论】:
-
你能扩展你想做的事吗?这些代码中的任何一个是否都会导致您正在寻找的输出?