首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PhpExcel :致命错误:类'PHPExcel_Shared_ZipStreamWrapper‘

PhpExcel :致命错误:类'PHPExcel_Shared_ZipStreamWrapper‘
EN

Stack Overflow用户
提问于 2012-01-31 00:12:24
回答 4查看 13.7K关注 0票数 2

我遇到了这个错误

\VBOXSVR\ACACIASOFT\apc\spreadsheet\lib\phpexcel\PHPExcel\Autoloader.php致命错误:在第29行的

中找不到'PHPExcel_Shared_ZipStreamWrapper‘类

我的当前设置是:主机: Windows 7:这是我从svn中签出解决方案的地方

虚拟盒客服机::Windows :安装我的apache,php,mysql的地方。*我还在虚拟框中添加了共享目录,以便将其用作documentroot位置

当我改变文档根目录时,我的困境就开始了。它会给我的phpexcel模块带来错误,但是当我更改回documentroot c:/program /apache时.将项目复制到此目录。这不会带来任何错误。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-02-08 10:24:53

必须在php扩展上启用zip dll。

票数 0
EN

Stack Overflow用户

发布于 2012-11-20 11:15:06

同样的问题已经困扰了我一整天。我发现,如果您以前在spl中注册了自己的autoloader函数,那么如果自动加载程序无法加载所需的类,则必须返回false,如下所示:

代码语言:javascript
复制
spl_autoload_register('my_autoload');
function my_autoload($className)
{
    if(file_exists(CLASS_PREFIX.".$className.php"))
    {
        require_once(CLASS_PREFIX.".$className.php");
    }
    else
    {
        return false;
    }
}
票数 14
EN

Stack Overflow用户

发布于 2012-01-31 07:39:05

看起来,您正在使用自己的自动加载程序运行其他库,该库会干扰PHPExcel自动加载程序。最新的SVN代码已被修改以防止此问题。

在/Classes/PHPExcel/Autoloader.php脚本本身中,更改:

代码语言:javascript
复制
public static function Register() {
    return spl_autoload_register(array('PHPExcel_Autoloader', 'Load'));
}   //  function Register()

代码语言:javascript
复制
public static function Register() {
    if (function_exists('__autoload')) {
        //    Register any existing autoloader function with SPL, so we don't get any clashes
        spl_autoload_register('__autoload');
    }
    //    Register ourselves with SPL
    return spl_autoload_register(array('PHPExcel_Autoloader', 'Load'));
}    //    function Register()
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9072687

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档