首页 > 后端开发 > php教程 > 怎么禁用购买的空间里的pear功能?

怎么禁用购买的空间里的pear功能?

WBOY
发布: 2016-06-23 14:08:42
原创
1406 人浏览过

购买的是香港空间:

因为我在程序里面做导出excel功能,自己传了个PEARuse控件上去。
每次调用报错重定义:Fatal error: Cannot redeclare _pear_call_destructors() (previously declared in /home/xxx/www/www/wxs/a/PEARuse/PEAR.php:772) in /usr/local/php52/lib/php/PEAR.php on line 777
想必就是空间也有装有一个pear 。

大虾们求救!如果禁掉空间已装好的pear?


回复讨论(解决方案)

单做一个 php 程序,只有

<?phpprint_r(get_included_files());
登录后复制

运行后贴出结果

用于检查 pear 是空间自动加载还是你的代码问题

to:xuzuning
运行的结果是这样的:
Array ( [0] => /home/wingolf/www/www/wxs/a/product/test.php );

补充一句,我在本地电脑运行是正常的,放到空间才出现这个重定义问题。

to:xuzuning
运行的结果是这样的:
Array ( [0] => /home/wingolf/www/www/wxs/a/product/test.php );
这就证明:您使用的空间并没有自动加载 pear
其实 pear 并不需要自动加载。只需把 pear 的路径放到 include_path 中就可以了
你的空间可能就是这样做的
这样的话,你只需上传 PEARuse 目录就可以了




to:xuzuning
运行的结果是这样的:
Array ( [0] => /home/wingolf/www/www/wxs/a/product/test.php );
这就证明:您使用的空间并没有自动加载 pear
其实 pear 并不需要自动加载。只需把 pear 的路径放到 include_path 中就可以了
你的空间可能就是这样做的
这样的话,你只需上传 PEARuse 目录就可以了

那我要如何include我要用的文件:
原来是这样的:require_once '../PEARuse/Spreadsheet/Excel/Writer.php'; 
现在要怎么做的?

 /home/xxx/www/www/wxs/a/PEARuse/PEAR.php:772
 /usr/local/php52/lib/php/PEAR.php on line 777
这是你错误信息中提示的,两个 PEAR.php 发生了冲突

你应该删除一个你能删除的

搞定了,直接调系统的:require_once '/usr/local/php52/lib/php/Spreadsheet/Excel/Writer.php';  

谢谢xuzuning 的耐心教导。

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板