こんにちは、みんな!Doctrine for PHP設定
私はPHPサイトを構築しており、DoctrineをDBALとORMとして使用することに決めました。私はPHPのスキルに少し錆びているので、私が1つのことを理解するのを助けてください。そのドキュメントに指定されている
教義を設定する方法は、次のようなコードを実行することです:
if ($applicationMode == "development") {
$cache = new \Doctrine\Common\Cache\ArrayCache;
} else {
$cache = new \Doctrine\Common\Cache\ApcCache;
}
$config = new Configuration;
$config->setMetadataCacheImpl($cache);
$driverImpl = $config->newDefaultAnnotationDriver('/path/to/lib/MyProject/Entities');
$config->setMetadataDriverImpl($driverImpl);
$config->setQueryCacheImpl($cache);
$config->setProxyDir('/path/to/myproject/lib/MyProject/Proxies');
$config->setProxyNamespace('MyProject\Proxies');
if ($applicationMode == "development") {
$config->setAutoGenerateProxyClasses(true);
} else {
$config->setAutoGenerateProxyClasses(false);
}
$connectionOptions = array(
'driver' => 'pdo_sqlite',
'path' => 'database.sqlite'
);
私は約困惑してるあなたは、このコードを実行する方法です。それはあなたがconfig.phpファイルに入れて、あなたの各ページにインクルードするものですか?基本的にページが処理されるたびにこれを実行しますか?あるいは、私はこの設定を一度やりますか?
関連するメモ - APCキャッシュの代わりにArrayCacheにキャッシュを設定すると、開発中にどのように役立つのか理解してもらえますか?
ありがとうございます! PHPのスキルが錆びている場合
- あなたは私のページの各々に含まれているファイルを意味するのですか?そうでない場合は、このファイルがいつロードされ、そこに作成されたオブジェクトがページ読み込みの間に永続化されますか? – Corvin
オブジェクトはページ読み込みの間に持続できません。 Yoはすべてのリクエストで作成する必要があります。そして、はい - ページごとに1つのファイル "パターン"を実装する場合は、毎回このブートストラップファイルを含める必要があります。 – madflow
あなたのプロジェクトにPHP Webフレームワークを使用することを強くお勧めします。 – madflow