新手求指导,关于curl
在本地服务器中已经开启对curl的支持,写了一个php文件,能够通过api调取别的网站数据,代码如下:$ch = curl_init();
$url = 'http://apis.baidu.com/apistore/mobilenumber/mobilenumber?phone=13916965573';
$header = array(
'apikey: **********',
);
// 添加apikey到header
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
// 添加apikey到header
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// 执行HTTP请求
curl_setopt($ch , CURLOPT_URL , $url);
$res = curl_exec($ch);
var_dump(json_decode($res));
但是我放在CI3.0 框架里,写了一个控制器,总是报错,错误提示为:
Parse error: syntax error, unexpected 'curl_setopt' (T_STRING)
本人新手,望懂的指导一分钟,大神勿喷 求指导下,正在学关于api方面的知识 'apikey: **********', 是不是这个最后多了一个逗号啊?
最重要的是:我是来帮顶的 /**
* 创建一个CURL网络访问
*
* @param string $url要访问的地址
* @param array $data要POST的值
* @param array $headers要附加的HTTP头信息
*
* @return string返回服务器的响应, false请求失败
*/
function curlRequest($url = '', $data = array(), $headers = array())
{
if( empty( $url ) )
return false;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
if( $headers )
{
$temp = array();
foreach( $headers as $key => $val )
$temp[] = "{$key}: {$val}";
curl_setopt ( $ch, CURLOPT_HTTPHEADER, $temp );
}
if( $data )
{
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
}
$output = curl_exec($ch);
curl_close($ch);
$startVar = substr( $output, 0, 1 );
$endVar = substr( $output, strlen($output) - 1, 1 );
if( $startVar == '{' && $endVar == '}' || $startVar == '[' && $endVar == ']' )
{
$temp = @json_decode( $output, true );
if( $temp !== false )
$output = $temp;
}
return $output;
}
页:
[1]