CakePHP
  • 文档
    • 手册
    • API
    • 视频
    • 报告安全问题
    • 隐私政策
    • 标识和商标
  • 商业解决方案
  • 周边产品
  • 自驾游
  • 团队
  • 社区
    • 社区
    • 参与进来
    • 问题 (Github)
    • 烘焙坊
    • 特色资源
    • 培训
    • 聚会
    • 我的 CakePHP
    • CakeFest
    • 新闻简报
    • 领英
    • YouTube
    • 脸书
    • 推特
    • Mastodon
    • 帮助和支持
    • 论坛
    • Stack Overflow
    • IRC
    • Slack
    • 付费支持
CakePHP

C CakePHP 5.1 Chiffon API

  • 项目
    • CakePHP
      • CakePHP
      • Chronos
      • Elastic Search
      • 队列
  • 版本
    • 5.1
      • 5.1
      • 5.0
      • 4.5
      • 4.4
      • 4.3
      • 4.2
      • 4.1
      • 4.0
      • 3.10
      • 3.9
      • 3.8
      • 3.7
      • 3.6
      • 3.5
      • 3.4
      • 3.3
      • 3.2
      • 3.1
      • 3.0
      • 2.10
      • 2.9
      • 2.8
      • 2.7
      • 2.6
      • 2.5
      • 2.4
      • 2.3
      • 2.2
      • 2.1
      • 2.0
      • 1.3
      • 1.2

命名空间

  • 全局
  • Cake
    • Cache
    • Collection
    • Command
    • Console
    • Controller
    • Core
    • Database
    • Datasource
      • Exception
      • Locator
      • Paging
    • Error
    • Event
    • Form
    • Http
    • I18n
    • Log
    • Mailer
    • Network
    • ORM
    • Routing
    • TestSuite
    • Utility
    • Validation
    • View

类 ConnectionManager

管理和加载 Connection 实例

提供加载和创建连接对象的接口。充当应用程序中定义的连接的注册表。

提供加载和枚举在 config/app.php 中定义的连接的接口。

命名空间: Cake\Datasource

属性摘要

  • $_aliasMap protected static
    array<string, string>

    连接别名的映射。

  • $_config protected static
    array<string|int, array<string, mixed>>

    配置集。

  • $_dsnClassMap protected static
    array<string, string>

    一个将 url 方案映射到完整限定驱动程序类名的数组

  • $_registry protected static
    Cake\Datasource\ConnectionRegistry

    管理器使用的 ConnectionRegistry。

方法摘要

  • alias() public static

    设置一个或多个连接别名。

  • aliases() public static

    返回当前连接别名及其别名。

  • configured() public static

    返回包含命名配置的数组。

  • drop() public static

    删除构建的适配器。

  • dropAlias() public static

    删除别名。

  • get() public static

    获取连接。

  • getConfig() public static

    读取现有配置。

  • getConfigOrFail() public static

    读取特定键的现有配置。

  • getDsnClassMap() public static

    返回此类的 DSN 类映射。

  • parseDsn() public static

    将 DSN 解析为有效的连接配置。

  • setConfig() public static

    配置新的连接对象。

  • setDsnClassMap() public static

    更新此类的 DSN 类映射。

方法详情

alias() ¶ public static

alias(string $source, string $alias): void

设置一个或多个连接别名。

连接别名允许您重命名活动连接,而不会覆盖别名连接。这在测试套件中最为有用,用于将连接替换为其测试变体。

定义的别名将优先于普通连接名称。例如,如果您将“default”别名为“test”,那么只要别名定义,获取“default”将始终返回“test”连接。

您可以使用 ConnectionManager::dropAlias() 删除别名。

用法

// Make 'things' resolve to 'test_things' connection
ConnectionManager::alias('test_things', 'things');
参数
string $source

要别名的现有连接。

string $alias

解析为 $source 的别名。

返回
void

aliases() ¶ public static

aliases(): array<string, string>

返回当前连接别名及其别名。

返回
array<string, string>

configured() ¶ public static

configured(): list<string>

返回包含命名配置的数组。

返回
list<string>

drop() ¶ public static

drop(string $config): bool

删除构建的适配器。

如果您希望修改现有配置,则应将其删除,更改配置,然后重新添加。

如果实现的对象支持 $_registry 对象,那么命名配置也将从注册表中卸载。

参数
string $config

您希望删除的现有配置。

返回
bool

dropAlias() ¶ public static

dropAlias(string $alias): void

删除别名。

从 ConnectionManager 中删除别名。如果没有任何其他名称相同的连接,则获取别名连接可能会失败。

参数
string $alias

要删除的连接别名

返回
void

get() ¶ public static

get(string $name, bool $useAliases = true): Cake\Datasource\ConnectionInterface

获取连接。

如果连接尚未构建,则将向注册表添加实例。此方法将使用已定义的任何别名。如果您想要原始未别名连接,请将 false 作为第二个参数传递。

参数
string $name

连接名称。

bool $useAliases optional

是否使用连接别名

返回
Cake\Datasource\ConnectionInterface
抛出
Cake\Datasource\Exception\MissingDatasourceConfigException
当配置数据丢失时。

getConfig() ¶ public static

getConfig(string $key): mixed|null

读取现有配置。

参数
string $key

配置的名称。

返回
mixed|null

getConfigOrFail() ¶ public static

getConfigOrFail(string $key): mixed

读取特定键的现有配置。

此键的配置值必须存在,它永远不能为 null。

参数
string $key

配置的名称。

返回
mixed
抛出
InvalidArgumentException
如果值不存在。

getDsnClassMap() ¶ public static

getDsnClassMap(): array<string, class-string>

返回此类的 DSN 类映射。

返回
array<string, class-string>

parseDsn() ¶ public static

parseDsn(string $dsn): array<string, mixed>

将 DSN 解析为有效的连接配置。

此方法允许使用与 PEAR::DB 使用的格式类似的格式设置 DSN。以下是其用法的示例

$dsn = 'mysql://user:pass@localhost/database';
$config = ConnectionManager::parseDsn($dsn);

$dsn = 'Cake\Database\Driver\Mysql://127.0.0.1:3306/database?className=Cake\Database\Connection';
$config = ConnectionManager::parseDsn($dsn);

$dsn = 'Cake\Database\Connection://127.0.0.1:3306/database?driver=Cake\Database\Driver\Mysql';
$config = ConnectionManager::parseDsn($dsn);

对于所有类,scheme 的值都设置为 className 和 driver 的值,除非它们已另行指定。

请注意,查询字符串参数也会被解析并设置为返回配置中的值。

参数
string $dsn

要转换为配置数组的 DSN 字符串

返回
array<string, mixed>

setConfig() ¶ public static

setConfig(array<string, mixed>|string $key, Cake\Datasource\ConnectionInterfaceClosure|array<string, mixed>|null $config = null): void

配置新的连接对象。

连接将在首次使用时才会建立。

参数
array<string, mixed>|string $key

连接配置的名称,或多个配置的数组。

Cake\Datasource\ConnectionInterfaceClosure|array<string, mixed>|null $config 可选

用于适配器的名称 => 配置数据的数组。

返回
void
抛出
Cake\Core\Exception\CakeException
尝试修改现有配置时。
另请参阅
\Cake\Core\StaticConfigTrait::config()

setDsnClassMap() ¶ 公共 静态

setDsnClassMap(array<string, string> $map): void

更新此类的 DSN 类映射。

参数
array<string, string> $map

要应用的类映射的添加/编辑。

返回
void

属性详情

$_aliasMap ¶ 受保护 静态

连接别名的映射。

类型
array<string, string>

$_config ¶ 受保护 静态

配置集。

类型
array<string|int, array<string, mixed>>

$_dsnClassMap ¶ 受保护 静态

一个将 url 方案映射到完整限定驱动程序类名的数组

类型
array<string, string>

$_registry ¶ 受保护 静态

管理器使用的 ConnectionRegistry。

类型
Cake\Datasource\ConnectionRegistry
OpenHub
Pingping
Linode
  • 商业解决方案
  • 展示
  • 文档
  • 手册
  • API
  • 视频
  • 报告安全问题
  • 隐私政策
  • 标识和商标
  • 社区
  • 参与进来
  • 问题 (Github)
  • 烘焙坊
  • 特色资源
  • 培训
  • 聚会
  • 我的 CakePHP
  • CakeFest
  • 新闻简报
  • 领英
  • YouTube
  • 脸书
  • 推特
  • Mastodon
  • 帮助和支持
  • 论坛
  • Stack Overflow
  • IRC
  • Slack
  • 付费支持

使用 CakePHP API 文档 生成