首頁 > 後端開發 > php教程 > 怎么禁用购买的空间里的pear功能?

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

WBOY
發布: 2016-06-23 14:08:42
原創
1339 人瀏覽過

购买的是香港空间:

因为我在程序里面做导出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
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板