dvsa / mot-doctrine-module
DVSA Doctrine 模块
Requires
- php: ^8.2
- ext-memcached: ^3.2
- doctrine/cache: ^1.5
- laminas/laminas-dependency-plugin: ^2.6.0
- laminas/laminas-servicemanager: ^3.10.0
- symfony/cache: ^v5.4.0
Requires (Dev)
- captainhook/plugin-composer: ^5.3
- dvsa/coding-standards: ^2.0
- phpstan/phpstan: ^1.11
- phpunit/phpunit: ^9.3
- squizlabs/php_codesniffer: ^3.10
- vimeo/psalm: ^5.24
- dev-main
- v3.0.0
- v2.0.0
- v1.0.3
- v1.0.2
- v1.0.1
- v1.0.0
- dev-feature-BL-15047-refactor-doctrine-cache
- dev-feature-BL-15047-refactor-doctrine-cache-andy
- dev-test-gh-action
- dev-test-feature-BL-15047-doctrine-cache
- dev-feature/bl-15047-add-linting
- dev-feature-bl-17026-php-82-update
- dev-feature-php-81-swimlane
- dev-fix-phpcs-misconfiguration
- dev-fix-doctrine-cache-version-composer
This package is auto-updated.
Last update: 2024-09-08 12:02:23 UTC
README
此模块为 doctrine 提供额外的工具和配置(包括 doctrine/cache, DoctrineModule 和 DoctrineORMModule)。
安装
推荐的安装方式是通过 Composer。
composer require dvsa/mot-doctrine-module
缓存
缓存服务别名
为 Doctrine\Common\Cache\Cache
服务提供了一个服务工厂
use Doctrine\Common\Cache\Cache;
$cache = $serviceLocator->get(Cache::class);
此服务作为对特定实现的别名,需要配置
return [
'cache' => [
'instance' => 'doctrine.cache.memcached'
]
]
在这种情况下,doctrine.cache.memcached
是将使用的服务名称。
Memcache
为 doctrine.cache.memcache
服务提供了一个服务工厂,这是 doctrine 在选择缓存驱动程序为 memcache 时所期望的。
它可以配置以下详细信息(这些都是默认值)
return [
'cache' => [
'memcache' => [
'servers' => [
[
'host' => 'localhost',
'port' => 11211,
'persistent' => true,
'weight' => 1
],
],
],
],
]
Memcached
为 doctrine.cache.memcached
服务提供了一个服务工厂,这是 doctrine 在选择缓存驱动程序为 memcached 时所期望的。
它可以配置以下详细信息(这些都是默认值)
return [
'cache' => [
'memcached' => [
'servers' => [
[
'host' => 'localhost',
'port' => 11211,
],
],
'options' => [
\Memcached::OPT_HASH => \Memcached::HASH_DEFAULT,
],
'persistent_id' => 'MOT',
],
],
]
接受所有由 Memcached::addServers 和 Memcached::setOptions 接受的参数。服务器的顺序很重要(键被忽略)。
默认情况下,Memcached 实例在请求结束时被销毁。要创建一个在请求之间持续存在的实例,请使用 persistent_id
指定实例的唯一 ID。具有相同 persistent_id
的所有实例将共享相同的连接。要将持久性设置为禁用,请将 persistent_id
设置为 null
(默认情况下启用)。
警告:如果 Memcached 无法连接到服务器,它不会报错。如果配置中提供了错误的参数,应用程序将不会缓存。
贡献
请参阅我们的 贡献指南。