PDO未定义的功能

时间:2014-01-06 17:39:14

标签: php pdo

我有这堂课:

<?php
    class LLPDO extends PDO{

         public function __construct($dsn, $user, $pass, $options = array()){
            $this->link = parent::__construct($dsn, $user, $pass, $options);
            $this->link->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        }

        public function isConnected(){
             try {
                $this->link->query('SELECT 1+1');
            } catch (PDOException $e) {
                return false;
            }
            return true;
        }

    }
?>

但是当我这样打电话时:

if(!$ibdb.isConnected()){
    $ibdb = new LLPDO(connectionString2($ini['ibdbn'], $ini['ibdbclient'], $ini['ibdbport']), $ini['ibdbusr'], $ini['ibdbpass'], array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
}

我收到致命错误:调用未定义的函数isConnected()。我称这个功能错了吗?或者我在类文件中做了哪些不正确的事情? $ibdb是我在运行它的脚本中提前创建的。

2 个答案:

答案 0 :(得分:3)

通过->运算符调用方法:

if(!$ibdb->isConnected()){
    $ibdb = new LLPDO(connectionString2($ini['ibdbn'], $ini['ibdbclient'], $ini['ibdbport']), $ini['ibdbusr'], $ini['ibdbpass'], array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
}

答案 1 :(得分:0)

if(!$ibdb.isConnected()){

.?你应该使用箭头(->)来访问方法/属性

if(!$ibdb->isConnected()){