1.先获取go-pear.php
# curl -o go-pear.php http://pear.php.net/go-pear.phar //如果是老版本php(5.2.9之前)从http://pear.php.net/go-pear获取
2.运行go-pear.php
# /usr/local/php/bin/php -f go-pear.php
直接回车进行下一步了,通常来说不会有问题,这时候,pear的一些列安装下载命令已经可以用了。
pear库中的各种包:http://pear.php.net/packages.php
比如,要下载一个Image_3D的包
找到最新的包的版本,然后执行
# /usr/local/php/bin/pear install Image_3D-0.4.2
4. 然后搜一个测试程序来测试一下,
setColor(new Image_3D_Color(255, 255, 255));
$light1 = $image->createLight("Light",array(-100, 100, -100));
$light1->setColor(new Image_3D_Color(255, 0, 0));
$light2 = $image->createLight("Light",array(100, -200, -50));
$light2->setColor(new Image_3D_Color(0, 200, 0));
$cone = $image->createObject('cone',array('detail'=>360));
$cone->setColor(new Image_3D_Color(255, 255, 255));
$cone->transform($image->createMatrix('scale', array(80, 150, 80)));
$cone->transform($image->createMatrix('rotation', array(15, 0, 20)));
$cone->transform($image->createMatrix('move', array(0, -50, 0)));
$image->createRenderer('perspectively');
$image->createDriver('GD');
$image->render(400, 300, '/opt/website/mysite/upload/object.png');
echo '
';
?>
总结:其实pear方便之处在于,安装完的扩展包可以直接用,但是用的时候得require一下;而pecl的扩展,必须通过编译安装的方式,并且要把生成的.so文件加到php.ini文件的配置中,然后还得重启服务器和php-fpm。此外,pecl的编译方式主要有如下几种:
1.用pear编译共享pecl扩展库:如果按照默认设置安装完pear后,在php安装目录的bin目录中会有一个pecl脚本
可以通过如下方式编译安装扩展,当然,执行完毕后,还是需要把extname.so配置到php.ini中,参考手册相关说明
# pecl install extname
2.用phpize编译共享pecl扩展库:有时候不能用 pecl 安装命令。这可能是因为在防火墙后面,或者是因为想要安装的扩展库还没有 PECL 兼容的包,例如 SVN 中尚未发布的扩展库。如果要编译这种扩展库,可以用更底层的编译工具来手工进行编译。
具体操作可以百度一下,很简单,参考手册相关说明
3.将pecl扩展库静态编入php中。参考手册相关说明