在学习curl的过程中,我们知道curl相当于一个简单的浏览器,通过将数据信息发送到相应的服务之上来返回服务器的响应结果。 虽然Java主要使用封装的http客户端进行操作,但我觉得它在php中更简单、更方便。
首先,使用cURL_init初始化新会话并返回curl句柄。 这就像Java中的套接字通信,建立网络通信连接。
CURL_setopt这是主要方法,curl_setopt ()函数设置curl会话选项。 option参数是您想要的设置,value是此选项提供的值。 可以设定的参数有很多。 例如,CURLOPT_URL是最重要的,如果没有请求地址,后面的参数就没用了。 CURLOPT_ENCODING设置请求的编码
以下是php curl获取新浪股票信息的例子。
函数get _ stock _ now _ info ($ stock _ code )。
$ch=curl_init (;
CURL_setopt($ch,CURLOPT_URL,“http://HQ.sinajs.cn/list=SZ”. $ stock _ code );
CURL_setopt($ch,CURLOPT_RETURNTRANSFER,1 );
CURL_setopt($ch,CURLOPT_ENCODING,’utf-8’); 加入gzip分析
CURL_setopt($ch,CURLOPT_HEADER,0 );
//3 .运行并检索html文档的内容
$output=curl_exec($ch );
//4 .释放curl句柄
CURL_close($ch;
$ output=MB _ convert _ encoding ($ output," utf-8 "," gbk " );
$strs=explode(「=”、$output );
if(strlen ) $strs[1] ) 10 ) {
$ch=curl_init (;
CURL_setopt($ch,CURLOPT_URL,“http://HQ.sinajs.cn/list=sh”. $ stock _ code );
CURL_setopt($ch,CURLOPT_RETURNTRANSFER,1 );
CURL_setopt($ch,CURLOPT_ENCODING,’utf-8’); 加入gzip分析
CURL_setopt($ch,CURLOPT_HEADER,0 );
//3 .运行并检索html文档的内容
$output=curl_exec($ch );
//4 .释放curl句柄
CURL_close($ch;
$ output=MB _ convert _ encoding ($ output," utf-8 "," gbk " );
$strs=explode(「=”,$output );
}
$return_str=$strs[1];
$return_str=substr($return_str,1,strlen ) $return_str )-4 );
return explode(‘(,),$return_str );
}
由于此接口必须指定sz或sh,因此只能分析和确定返回的结果。 其中
MB_convert_encoding($output、" utf-8 "、" gbk " ); 这主要解决编码乱码问题,请参考:
数组中返回的数据如下: