步骤1:
先编译curl (下载链接:https://curl.haxx.se/download.html)
tar -zxvf curl-7.66.0.tar.gz
cd curl-7.66.0
./configure --prefix=/usr/local/curl --host=mipsel-linux(指定安装路径和交叉编译器)
make
make install
步骤2:编译php
tar -zxvf php-src-php-7.1.30.tar.gz
cd php-src-php-7.1.30
./buildconf --force
./configure --prefix=/usr/php --exec-prefix=/usr/php/bin --host=mipsel-linux --with-curl=/usr/local/curl (注意此处的路径为上面指定的路径)
make
make install
修改php.ini 加入支持curl功能
extension = curl.so
步骤3:移植相关文件到目标上
重点:移植curl库,是拷贝/usr/local/curl目录下的so文件到目标环境上
可能提示问题:执行php提示“./php: symbol lookup error: ./php: undefined symbol: curl_global_init”
原因是找不到对于的库,我这边目标环境所需的curl库是 libcurl.so.4 那么我创建一个软连接即可
ln -s /usr/local/curl/lib/libcurl.so.4.5.0 /usr/lib/libcurl.so.4
步骤4:验证curl模块
方式1:
创建测试文件test.php
<?php
echo 'Curl: ', function_exists('curl_version') ? 'Enabled' . "\xA" : 'Disabled' . "\xA";
?>
/usr/php/bin/php test.php 执行会输出提示 “Curl: Enabled”
方式2:
通过网页访问此php文件,会显示对应网页内容
<?php
// 初始化一个 cURL 对象
$curl = curl_init();
// 设置你需要抓取的URL
curl_setopt($curl, CURLOPT_URL, 'http://www.baidu.com');
// 设置header
curl_setopt($curl, CURLOPT_HEADER, 1);
// 设置cURL 参数,要求结果保存到字符串中还是输出到屏幕上。
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
// 运行cURL,请求网页
$data = curl_exec($curl);
// 关闭URL请求
curl_close($curl);
// 显示获得的数据
var_dump($data);
?>