如何通过长尾词改写Laravel服务容器实现方法的详细步骤?
- 内容介绍
- 文章标签
- 相关推荐
本文共计4695个文字,预计阅读时间需要19分钟。
1. 容器本质:服务容器本质上是一个数组,键名是服务名,值是服务实例。
2.服务属性:服务可以是初始值,也可以是对象,甚至可以代表任意数据。
3.服务名:服务名可以是自定义名称,也可以是对象的标识。
1. 容器的本质
- 服务容器本身就是一个数组,键名就是服务名,值就是服务。
- 服务可以是一个原始值,也可以是一个对象,可以说是任意数据。
- 服务名可以是自定义名,也可以是对象的类名,也可以是接口名。
// 服务容器 $container = [ // 原始值 'text' => '这是一个字符串', // 自定义服务名 'customName' => new StdClass(), // 使用类名作为服务名 'StdClass' => new StdClass(), // 使用接口名作为服务名 'Namespace\\StdClassInterface' => new StdClass(), ]; // ----------- ↓↓↓↓示例代码↓↓↓↓ ----------- // // 绑定服务到容器 $container['standard'] = new StdClass(); // 获取服务 $standard = $container['standard']; var_dump($standard);
2. 封装成类
为了方便维护,我们把上面的数组封装到类里面。
本文共计4695个文字,预计阅读时间需要19分钟。
1. 容器本质:服务容器本质上是一个数组,键名是服务名,值是服务实例。
2.服务属性:服务可以是初始值,也可以是对象,甚至可以代表任意数据。
3.服务名:服务名可以是自定义名称,也可以是对象的标识。
1. 容器的本质
- 服务容器本身就是一个数组,键名就是服务名,值就是服务。
- 服务可以是一个原始值,也可以是一个对象,可以说是任意数据。
- 服务名可以是自定义名,也可以是对象的类名,也可以是接口名。
// 服务容器 $container = [ // 原始值 'text' => '这是一个字符串', // 自定义服务名 'customName' => new StdClass(), // 使用类名作为服务名 'StdClass' => new StdClass(), // 使用接口名作为服务名 'Namespace\\StdClassInterface' => new StdClass(), ]; // ----------- ↓↓↓↓示例代码↓↓↓↓ ----------- // // 绑定服务到容器 $container['standard'] = new StdClass(); // 获取服务 $standard = $container['standard']; var_dump($standard);
2. 封装成类
为了方便维护,我们把上面的数组封装到类里面。

