我要改的东西,就是想让框架可以自动换数据库,根据配置的不同。比如
'db' => array(
'dbType' => 'pdoMy',  这样就联结用pdoMy 
// 'dbType' => 'mysql ',  这样就联结用mysql扩展  'dbHost' => '127.0.0.1', 
'port' => '3306', 
'dbName' => 'dianxin', 
'tablePre' => 'dx_', 
'dbUser' => 'root', 
'dbPass' => '', 
'dbPConnect' => true, 
'dbCharset' => 'utf8'
)
就到这里就出错了
$className = $dbType.'_DB';
                        
                       
                        
                        

if(!class_exists($className))
{
                            echo "0";
                            
switch ($dbType)
{
case 'mssql':
$dbFile .= 'mssql_DB.class.php'; break;
case 'oracle':
$dbFile .= 'oracle_DB.class.php'; break;
case 'mysql':
$dbFile .= 'mysql_DB.class.php'; break;
                                        case 'pdoMy':
$dbFile .= 'pdoMy_DB.class.php'; break;    
default:
$this->error = '数据库配置类型'.$dbType.'是错误的!';
return false;
}
                                echo $dbFile;
                                
if(!file_exists($dbFile))
{
                                    echo "1";
$this->error = '没找到'.$dbType.'数据驱动!';
return false;
}
require_once $dbFile;
if(!class_exists($dbType))
{
                                     echo "2";
$this->error = '没找到'.$dbType.'数据驱动!';
return false;
}
}
self::$dbObj[$dbType] = self::$nowDb = new $className();
?????就是上面这一句有问题,后面的程序执行不了,在这儿就被终止了。不知道是啥原因??
找不到原因。

解决方案 »

  1.   

     require_once $dbFile;
    我打印出来,是正确的路径。D:/wamp/www/dxsvn/app/lib/db/pdoMy_DB.class.php
      

  2.   

    file_exists($dbFile) 是否通过.?
    数据库配置文件 使用  return 方式返回?
    就1点点代码 真的看不出来.
    报的是什么错误?
      

  3.   

    真的没有错误
    self::$dbObj[$dbType] = self::$nowDb = new $className();
    在这里程序就终止了。
      

  4.   

    php.ini 中令 display_errors=On  就可以看到错误提示了。
      

  5.   

    new $className()是什么?类吗?那应该是new className()吧
      

  6.   

    你为什么加个点呢 $dbFile .=