Illuminate ライブラリを使用して Slim フレームワークでアプリケーションを開発しています。Illuminate\Database\Capsule\Manager を使用してデータベースへの接続を作成しようとしています。どういうわけか、「addConnection」ステートメントを認識していません。これが私の完全なコードです。誰かが私が間違っている場所を指摘できれば、それは非常に役に立ちます。
require 'lib/vendor/PHPMailer/PHPMailerAutoload.php';
require 'lib/init.php';
require 'lib/Slim/Slim.php';
date_default_timezone_set('UTC');
use lib\Slim\Middleware\SessionCookie;
\Slim\Slim::registerAutoloader();
use Illuminate\Database\Capsule\Manager as Capsule;
$capsule = new Capsule;
$capsule->addConnection(array(
'driver' => 'mysql',
'host' => 'localhost',
'database' => 'mydatabase',
'username' => 'myusername',
'password' => 'mypassword',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
));
use Illuminate\Events\Dispatcher;
use Illuminate\Container\Container;
$capsule->setEventDispatcher(new Dispatcher(new Container));
// Make this Capsule instance available globally via static methods... (optional)
$capsule->setAsGlobal();
// Setup the Eloquent ORM... (optional; unless you've used setEventDispatcher())
$capsule->bootEloquent();
$app->run();
ここでスクリプトが停止し、アプリケーションが「応答なし」状態になります。
$capsule->addConnection(array( 'driver' => 'mysql', 'host' => 'localhost', 'database' => 'mydatabase', 'username' => 'myusername', 'password' => ' mypassword', 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '', ));
データベースの詳細を何度も確認しましたが、100% 正しいです。誰がそれを引き起こしているのか指摘できますか?
アップデート:
テストした後、ページが間違ったステートメントに対してエラー http 500 を出していることに気付きました。たとえば、ステートメントの末尾にセミコロンを付け忘れると、500 になります。これは、エラーが SQL 以外の何かである可能性があることを示唆しています。デバッグを有効にしてエラーの原因を表示する方法はありますか? そこから追跡できるかも?
アップデート
デバッグを有効にしました。次のエラーが表示されます。
未定義関数 Illuminate\Support\value() の呼び出し