> 백엔드 개발 > PHP 튜토리얼 > 怎么禁用购买的空间里的pear功能?

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

WBOY
풀어 주다: 2016-06-23 14:08:42
원래의
1349명이 탐색했습니다.

购买的是香港空间:

因为我在程序里面做导出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으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿