bapcat/facade

Phi 绑定的伪静态访问器

5.0 2024-05-28 19:55 UTC

This package is auto-updated.

Last update: 2024-08-28 20:32:55 UTC


README

Build Status Coverage Status License

Phi 面板

面板是一种使 Phi 绑定感觉更自然的方法。

安装

Composer

Composer 是安装面板的推荐方法。

$ composer require bapcat/facade

GitHub

可以从 GitHub 下载面板。

功能

对 Phi 单例的伪静态访问

Phi 面板的一个常见用例是日志记录

namespace Vendor\Package\Logging;

class Logger {
  public function warning($text) {
    // ...
  }
}
$logger = new Vendor\Package\Logging\Logger;

$phi = BapCat\Phi\Phi::instance();
$phi->bind('core.log', $logger);
use BapCat\Facade\Facade;

class Log extends Facade {
  protected static $_binding = 'core.log';
}

一旦设置好面板,就可以像这样访问 Vendor\Package\Logging 单例

Log::warning('Something bad happened!');

Phi 面板甚至可以用来为 Phi 创建一个面板

$phi = BapCat\Phi\Phi::instance();
$phi->bind('phi', $phi);
use BapCat\Facade\Facade;

class Phi extends Facade {
  protected static $_binding = 'phi';
}

这将允许像这样访问 Phi

Phi::bind('Bar', 'Foo');
$foo = Phi::make('Bar');

Phi 自定义解析器

如果你使用 Phi 1.2.0 或更高版本,Phi 面板将与自定义解析器无缝工作。