首页 > 其他分享 >yii2服务定位器

yii2服务定位器

时间:2024-03-30 14:22:55浏览次数:21  
标签:定位器 set 服务 cache yii locator 组件 yii2

yii2服务定位器

服务定位器是注册和访问组件的对象

注册组件

use yii\di\ServiceLocator;
use yii\caching\FileCache;

$locator = new ServiceLocator;

// 通过一个可用于创建该组件的类名,注册 "cache" (缓存)组件。
$locator->set('cache', 'yii\caching\ApcCache');

// 通过一个可用于创建该组件的配置数组,注册 "db" (数据库)组件。
$locator->set('db', [
    'class' => 'yii\db\Connection',
    'dsn' => 'mysql:host=localhost;dbname=demo',
    'username' => 'root',
    'password' => '',
]);

// 通过一个能返回该组件的匿名函数,注册 "search" 组件。
$locator->set('search', function () {
    return new app\components\SolrService;
});

// 用组件注册 "pageCache" 组件
$locator->set('pageCache', new FileCache);

访问组件

$cache = $locator->get('cache');
// 或者
$cache = $locator->cache;

标签:定位器,set,服务,cache,yii,locator,组件,yii2
From: https://www.cnblogs.com/hu308830232/p/18105430

相关文章

  • yii2响应(Responses)
    yii2响应(Responses)状态码Yii::$app->response->statusCode=200;异常yii\web\BadRequestHttpException:statuscode400.yii\web\ConflictHttpException:statuscode409.yii\web\ForbiddenHttpException:statuscode403.yii\web\GoneHttpException:......
  • yii2过滤器
    yii2过滤器过滤器是控制器动作执行之前或之后执行的对象。示例过滤器common\components\ActionTimeFilter<?phpnamespaceapp\common\components;useYii;useyii\base\ActionFilter;classActionTimeFilterextendsActionFilter{private$_startTime;......
  • yii2 资源
    yii2资源AppAsset.php<?phpnamespaceapp\assets;useyii\web\AssetBundle;classAppAssetextendsAssetBundle{public$basePath='@webroot';public$baseUrl='@web';public$css=['css/site.css�......
  • yii2请求组件
    yii2请求组件应用的请求是用yii\web\Request对象来表示的请求参数$request=Yii::$app->request;$get=$request->get();//等价于:$get=$_GET;$id=$request->get('id');//等价于:$id=isset($_GET['id'])?$_GET['id']:null;$i......
  • yii2视图
    yii2视图示例代码<?phpuseyii\helpers\Html;useyii\widgets\ActiveForm;/*@var$thisyii\web\View*//*@var$formyii\widgets\ActiveForm*//*@var$modelapp\models\LoginForm*/$this->title='Login';?><h1><?=Ht......
  • python+django在线政务便民服务系统flask
     随着时代在飞速进步,每个行业都在努力发展现在先进技术,通过这些先进的技术来提高自己的水平和优势,在线政务服务中心管理当然不能排除在外。在线政务服务中心管理系统是在实际应用和软件工程的开发原理之上,运用python语言以及vue框架进行开发。首先要进行需求分析,分析出在线政......
  • SpringCloud下的微服务应用技术(结尾篇)
    六.Feign远程调用6.1替代RestTemplateRestTemplate调用问题:代码可读性差,参数复杂且URL难维护。Feign是一个声明式的HTTP客户端,官方地址:GitHub-OpenFeign/feign:Feignmakeswritingjavahttpclientseasier它可以解决上述提到的问题。STEP1:首先,在orderservice中引......
  • yii2 模型
    yii2模型Yii2的模型(Model)是MVC(Model-View-Controller)设计模式中的一部分,它代表业务数据、规则和逻辑的对象。模型通常用于处理与数据相关的业务逻辑,如数据的验证、访问和修改等。模型示例代码<?phpnamespaceapp\models;useYii;useyii\db\ActiveRecord;......
  • Applescript实现无痕检测是否注册iMessage服务,iMessages数据筛选,iMessage蓝号检测完
    一、实现iMessage蓝号数据筛选的两种方式:1.人工筛选,将要验证的号码输出到文件中,以逗号分隔。再将文件中的号码粘贴到iMessage客户端的地址栏,iMessage客户端会自动逐个检验该号码是否为iMessage账号,检验速度视网速而定。红色表示不是iMessage账号,蓝色表示iMessage账号。2.编写脚......
  • yii2 配置bootstrap使用
    yii2配置bootstrap使用配置config/web.php添加people<?php...$config=[...'bootstrap'=>['log','people'],...'components'=>['people'=>['class'......