我想用程序判断,如果安装Zend Optimizer环境就加载zend加密文件。如果没有安装就不加载。不至于造成网站无法访问。请问如何用程序快速检测出来?

解决方案 »

  1.   

    获取phpinfo函数返回的字符串,查找“Zend Optimizer”字符(具体是不是这样忘了,可以打开phpinfo看下)
      

  2.   

    $ZendOptimizer = false;
    include 'test.php';
    if($ZendOptimizer) {
      //有 Zend Optimizer
    }else {
      //无 Zend Optimizer
    }test.php
    $ZendOptimizer = true;
    当然要编译啦
      

  3.   


    你这样搞,test.php是zend加密过的东西吧?也就是说,你还没判断之前,这个文件就已经被加载了。也就是说,假如用户没装zend,页面都无法运行显示空白了。那就失去了判断的意义了。
      

  4.   

    if (extension_loaded('Zend Optimizer') || extension_loaded('Zend Guard Loader') || get_cfg_var("zend_extension")||get_cfg_var("zend_optimizer.optimization_level")||get_cfg_var("zend_extension_manager.optimizer_ts")||get_cfg_var("zend_extension_ts")){
    }else{
    if (version_compare(phpversion(), "5.3", "<=")) {
    exit('请安装 Zend Optimizer v3.3.0或更高版本.如果提示不正确请手动打开\source\plugin\robots\check.php文件,查找对应提示,删除那行.');
    } else {
    exit('请安装Zend Guard Loader v3.3.0或更高版本.如果提示不正确请手动打开\source\plugin\robots\check.php文件,查找对应提示,删除那行.');
    }
    }
      

  5.   


    if (extension_loaded('Zend Optimizer') || extension_loaded('Zend Guard Loader') || get_cfg_var("zend_extension")||get_cfg_var("zend_optimizer.optimization_level")||get_cfg_var("zend_extension_manager.optimizer_ts")||get_cfg_var("zend_extension_ts")){
    }else{
    if (version_compare(phpversion(), "5.3", "<=")) {
    exit('请安装 Zend Optimizer v3.3.0或更高版本.如果提示不正确请手动打开\source\plugin\robots\check.php文件,查找对应提示,删除那行.');
    } else {
    exit('请安装Zend Guard Loader v3.3.0或更高版本.如果提示不正确请手动打开\source\plugin\robots\check.php文件,查找对应提示,删除那行.');
    }
    }