[英]file_get_contents and CURL in PHP
嗨,我正在尝试从以下网址获取信息:
我在PHP中尝试了CURL和file_get_contents,但无法获得该请求。
当我使用file_get_contents时:
警告:file_get_contents( https://www.adx.ae/zh/_vti_bin/ADX/svc/trading.svc/ListedCompanyOrderBook?listedCompanyID=ADIB ):无法打开流:HTTP请求失败! HTTP / 1.1 400错误请求
当我使用CURL时,我得到以下消息:
以下是file_contents代码:
<?php
$url = "https://www.adx.ae/en/_vti_bin/ADX/svc/trading.svc/ListedCompanyOrderBook?listedCompanyID=ADIB";
$data = file_get_contents($url);
print_r($data);
?>
另一种方法:
<?php
$url = "https://www.adx.ae/en/_vti_bin/ADX/svc/trading.svc/ListedCompanyOrderBook?listedCompanyID=ADIB";
$data = file_get_contents($url);
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
$data = curl_exec($ch);
curl_close($ch);
print_r($data);
?>
我认为您正在http://www.phpfiddle.org/上运行此代码。出于安全原因,该站点上的curl被禁用。 如果这是您的php服务器,请尝试这样,
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://www.adx.ae/en/_vti_bin/ADX/svc/trading.svc/ListedCompanyOrderBook?listedCompanyID=ADIB",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET"
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
?>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.