pdo连接mysql数据库错误
public function __construct($dbConfig=''){ if (!class_exists("PDO")){ self::throw_exception('不支持PDO,请先开启'); } if(!is_array($dbConfig)){ $dbConfig=array( 'hostname'=>DB_HOST, 'username'=>DB_USER, 'password'=>DB_PWD, 'database'=>DB_NAME, 'hostport'=>DB_PORT, 'dbms'=>DB_TYPE, 'dsn'=>DB_TYPE.":host=".DB_HOST.";dbname=".DB_NAME );} if(empty($dbConfig['hostname'])){ self::throw_exception('没有定义数据库配置,请先定义'); } self::$config=$dbConfig; if(empty(self::$config['params']))self::$config['params']=array(); if(!isset(self::$link)){ $configs=self::$config; if(self::$pconnect){ //开启长连接 $configs['params'][constant("PDO::ATTR_PERSISTENT")]=true; } try{ self::$link=new PDO($configs['$dsn'],$configs['$username'],$configs['$password'],$configs['$params']); }catch(PDOException $e){ self::throw_exception($e->getMessage()); } if(!self::$link){ self::throw_exception('PDO连接错误'); return false; } self::$link->exec('SET NAMES'.DB_CHARSET); self::$dbVersion=self::$link->getAttribute(constant("PDO::ATTR_SERVER_VERSION")); self::$connected=true; unset($configs); } }
require_once 'config.php'; $PdoMysql=new PdoMysql; var_dump($PdoMysql); // echo phpinfo(); // $sql='select * from c_admin'; // print_r($PdoMysql->getAll($sql));
报错信息是:invalid data source name
config.php
<?php define("DB_HOST",'localhost'); define("DB_USER",'root'); define("DB_PWD",'root'); define("DB_NAME",'cyotel'); define("DB_PORT",'3306'); define("DB_TYPE",'mysql'); define("DB_CHARSET",'utf8'); ?>
已开启pdo_mysql扩展
求大神解答 ,感激不尽~