使用Yii框架怎么模拟组件调用注入

  介绍

这期内容当中小编将会给大家带来有关使用Yii框架怎么模拟组件调用注入,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

Yii中组件只有在被调用的时候才会被实例化,且在当前请求中之后调用该组件只会使用上一次实例化的实例,不会重新生成该实例。

& # 39;组件# 39;,,=祝辞,阵列(   & # 39;才能组件调用名& # 39;,,=祝辞,,& # 39;组件调用命名空间& # 39;,   & # 39;才能组件调用名& # 39;,,=祝辞,阵列(   ,,,,,& # 39;类# 39;,=祝辞,& # 39;组件调用命名空间& # 39;   ,,);   & # 39;才能组件调用名& # 39;,,=祝辞,函数(){   ,,,return  new  & # 39;组件调用命名空间& # 39;;   ,,}   )

一个类似的小组件,可以实现上述功能。方便我们存储服务功能组件。

& lt; php ?   namespace 应用程序组件\ \服务;/* *   ,*自定义服务层调用组件   ,*支持,的实例模式只有yii模式的string 和,array 模式   ,*例子   ,* services =祝辞,阵列(   ,*,,& # 39;customservice # 39;,=祝辞,阵列(   *,,,,,,,,& # 39;类# 39;,=祝辞,& # 39;应用程序组件\ \定制\定制# 39;,   *,,,,,,,,& # 39;名字# 39;,=祝辞,& # 39;我是勇哥& # 39;   *,,,,,,),   ,*)   ,*/class 服务   {   private 才能;dataObj 美元;=,数组();   private 才能;classes 美元;=,数组();   public 才能;function  __set(名字,美元价值)   {才能   ,,,这个→美元类[名字]美元,=,美元价值;   ,,}   public 才能;function  __get(名称)   {才能   ,,,如果(!收取($ this→dataObj[名字]美元),| |,$ this→dataObj[名字]美元,==,null)   ,,,{   ,,,,,classInfo 美元;=,$ this→类[名字]美元;   ,,,,,这个→美元dataObj[名字]美元,=,is_array (classInfo美元),?,(new  classInfo美元[& # 39;类# 39;]),:,(new  classInfo美元);   ,,,,,如果(is_array (classInfo美元))   ,,,,,,,foreach (classInfo 美元;as 美元=祝辞;b)美元   ,,,,,,,,,如果(a 美元;!=,& # 39;类# 39;)   ,,,,,,,,,,,这个→美元dataObj[名字]美元→a 美元;=,b美元;   ,,,}   ,,,return  $ this→dataObj[名字]美元;   ,,}   }

web。php

& # 39;组件# 39;=祝辞阵列(   & # 39;才能服务# 39;,=祝辞,阵列(   ,,,& # 39;类# 39;,,=祝辞,,& # 39;应用程序组件\ \ \服务# 39;服务,   ,,,//自定义服务,custom1   ,,,& # 39;custom1Service& # 39;,=祝辞,阵列(   ,,,,,& # 39;类# 39;,=祝辞,& # 39;应用\ \ Custom1 \ Custom1& # 39;服务,   ,,,,,//需要注入的属性值   ,,,,,& # 39;名字# 39;,,=祝辞,& # 39;我是勇哥& # 39;,   ,,,,,& # 39;年龄# 39;,,=在22   ,,,),   ,,,//自定义服务,custom2   ,,,& # 39;custom2Service& # 39;,=祝辞,阵列(   ,,,,,& # 39;类# 39;,=祝辞,& # 39;应用\ \ Custom2 \ Custom2& # 39;服务,   ,,,,,//需要注入的属性值   ,,,,,& # 39;名字# 39;,,=祝辞,& # 39;我是勇哥& # 39;,   ,,,,,& # 39;年龄# 39;,,=在22   ,,,),   ,,)   )

控制层调用

& lt; php ?   namespace 应用\控制器\回家;   use , Yii;   use , yii \ web \控制器;   class  IndexController  extends 控制器   {   public 才能;function  actionIndex ()   {才能   ,,,echo  Yii:应用程序→美元服务→custom1Service→名称;   ,,}   }

上述就是小编为大家分享的使用Yii框架怎么模拟组件调用注入了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。

使用Yii框架怎么模拟组件调用注入