Maison >développement back-end >tutoriel php >怎么禁用购买的空间里的pear功能?

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

WBOY
WBOYoriginal
2016-06-23 14:08:421361parcourir

购买的是香港空间:

因为我在程序里面做导出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 的耐心教导。

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn