Dokku部署Silex找不到PdoServiceProvider
Dokku deployed Silex can't find PdoServiceProvider
我有一个使用 Silex 完成的项目,我使用 herrera-io/silex-pdo
作为 PDO 提供程序,但我遇到随机崩溃和套接字错误(我通过套接字连接到数据库),因为该库已被放弃,我改为 csanquer/pdo-service-provider
,它在我的本地主机服务器上运行良好,但是当我部署到远程时,出现以下错误:
PHP Fatal error: Class 'Csanquer\Silex\PdoServiceProvider\Provider\PdoServiceProvider' not found in /app/web/index.php on line 52
这是第 52 行周围的代码:
use Csanquer\Silex\PdoServiceProvider\Provider\PdoServiceProvider;
$app->register(
// you can customize services and options prefix with the provider first argument (default = 'pdo')
new PdoServiceProvider('pdo'), // Line 52
array(
'pdo.server' => array(
// PDO driver to use among : mysql, pgsql , oracle, mssql, sqlite, dblib
'driver' => 'mysql',
'host' => 'unix_socket=/app/mysqld.sock',
'dbname' => 'db_beta',
'port' => 3306,
'user' => 'user',
'password' => 'pass',
),
// optional PDO attributes used in PDO constructor 4th argument driver_options
// some PDO attributes can be used only as PDO driver_options
// see http://www.php.net/manual/fr/pdo.construct.php
'pdo.options' => array(
\PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'"
),
// optional PDO attributes set with PDO::setAttribute
// see http://www.php.net/manual/fr/pdo.setattribute.php
'pdo.attributes' => array(
\PDO::ATTR_ERRMODE => \PDO::ERRMODE_EXCEPTION,
),
)
);
在此先感谢您的帮助,或任何可能出错的线索!
原来问题出在使用说明上。要修复,只需更改:
use Csanquer\Silex\PdoServiceProvider\Provider\PdoServiceProvider;
到:
use Csanquer\Silex\PdoServiceProvider\Provider\PDOServiceProvider;
并且:
new PdoServiceProvider('pdo')
收件人:new PDOServiceProvider('pdo')
现在可以使用了!
我有一个使用 Silex 完成的项目,我使用 herrera-io/silex-pdo
作为 PDO 提供程序,但我遇到随机崩溃和套接字错误(我通过套接字连接到数据库),因为该库已被放弃,我改为 csanquer/pdo-service-provider
,它在我的本地主机服务器上运行良好,但是当我部署到远程时,出现以下错误:
PHP Fatal error: Class 'Csanquer\Silex\PdoServiceProvider\Provider\PdoServiceProvider' not found in /app/web/index.php on line 52
这是第 52 行周围的代码:
use Csanquer\Silex\PdoServiceProvider\Provider\PdoServiceProvider;
$app->register(
// you can customize services and options prefix with the provider first argument (default = 'pdo')
new PdoServiceProvider('pdo'), // Line 52
array(
'pdo.server' => array(
// PDO driver to use among : mysql, pgsql , oracle, mssql, sqlite, dblib
'driver' => 'mysql',
'host' => 'unix_socket=/app/mysqld.sock',
'dbname' => 'db_beta',
'port' => 3306,
'user' => 'user',
'password' => 'pass',
),
// optional PDO attributes used in PDO constructor 4th argument driver_options
// some PDO attributes can be used only as PDO driver_options
// see http://www.php.net/manual/fr/pdo.construct.php
'pdo.options' => array(
\PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'"
),
// optional PDO attributes set with PDO::setAttribute
// see http://www.php.net/manual/fr/pdo.setattribute.php
'pdo.attributes' => array(
\PDO::ATTR_ERRMODE => \PDO::ERRMODE_EXCEPTION,
),
)
);
在此先感谢您的帮助,或任何可能出错的线索!
原来问题出在使用说明上。要修复,只需更改:
use Csanquer\Silex\PdoServiceProvider\Provider\PdoServiceProvider;
到:
use Csanquer\Silex\PdoServiceProvider\Provider\PDOServiceProvider;
并且:
new PdoServiceProvider('pdo')
收件人:new PDOServiceProvider('pdo')
现在可以使用了!