发新话题
打印

发现一个问题,关于php4和php5兼容的问题

本主题由 Hex 于 2008-3-28 11:33 移动

发现一个问题,关于php4和php5兼容的问题

研究了一段代码后,就在不同的环境测试同一段程序,发现了一个小问题,

就是PHP5支持字符集编码,而PHP4下根本就没有这个,所以,在用到数据库或者是页面输出,都会报错,

这里,提个最简单,有效的方法,将凡是可能出现版本区别的地方加上判断版本号,


我初步在以下三个地方修改后,在PHP4下测试通过


第一个地方:

找到database\DB_driver.php文件中如下代码,修改
复制内容到剪贴板
PHP 代码:

//此段注意,主要是解决php4报错问题,php4中没有字符编码问题
//如果是php5可能执行此段程序
if(floor(phpversion()) >= 5){  
  if (! $this->db_set_charset($this->char_set, $this->dbcollat))
  {
    log_message('error', 'Unable to set database connection charset: '.$this->char_set);
   
    if ($this->db_debug)
    {
     $this->display_error('db_unable_to_set_charset', $this->char_set);
    }
   
    return FALSE;
  }
}

 
第二个地方是:

找到config\database.php文件中如下代码,修改
复制内容到剪贴板
PHP 代码:


//此段注意,主要是解决php4报错问题,php4中没有字符编码问题
//如果是php5可能执行此段程序
if(floor(phpversion()) >= 5){
$db['default']['char_set'] = "utf8";
$db['default']['dbcollat'] = "utf8_general_ci";
}

 
第三个地方是:

找到config\config.php文件中如下代码,修改
复制内容到剪贴板
PHP 代码:


//此段注意,主要是解决php4报错问题,php4中没有字符编码问题
//如果是php5可能执行此段程序
if(floor(phpversion()) >= 5){
$config['charset'] = "UTF-8";
}


 
简单问题修正,希望给初学者方便,请高手不要笑话。

谢谢!

[ 本帖最后由 xhq6632 于 2008-3-28 10:45 编辑 ]
本帖最近评分记录
  • Hex 威望 +5 原创内容 2008-3-28 11:34
程序人生,你我相伴!

TOP

审查通过,学习。。。。:handshake
CodeIgniter,JQuery,Ext
http://www.girlsgroup.cn

TOP

发新话题