在Laravel PHP Framework中找不到PGSQL驱动程序

Nyx*_*nyx 3 php postgresql pdo laravel

您好我在CentOS 6.3上使用Laravel PHP框架.我安装了PostgreSQL 9.1,以及PDO和PDO-PGSQL.在application/config/database.php我已经设置Laravel使用PostgreSQL:

'default' => 'pgsql',


'connections' => array(

    'pgsql' => array(
        'driver'   => 'pgsql',
        'host'     => 'localhost',
        'database' => 'dbname',
        'username' => 'username',
        'password' => 'shhhpass',
        'charset'  => 'utf8',
        'prefix'   => '',
        'schema'   => 'public',
    ),
),
Run Code Online (Sandbox Code Playgroud)

但是,访问任何页面都会给出错误:

Message:

could not find driver
Location:     

/home/dev/public_html/laravel/database/connectors/postgres.php on line 37
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?谢谢!

Omi*_*gar 6

给出该错误的行是这样的:

$connection = new PDO($dsn, $username, $password, $this->options($config));
Run Code Online (Sandbox Code Playgroud)

它正在尝试为pg加载PDO驱动程序.

您是否检查过PHP配置文件中是否启用了pdo扩展?检查/etc/php.d/pgsql.ini/etc/php.d/pdo.ini.

希望这可以帮助.


小智 6

sudo apt-get install php5-pgsql在您的终端上运行。

换句话说,为 PHP 安装 PostgreSQL 驱动程序。

  • OP 表示他正在使用 CentOS。这些说明适用于 Debian/Ubuntu。 (5认同)