单独使用Laravel容器 laravel-container
laravel-containerLaravel 容器是完全独立的,即使你的项目不是基于 Laravel 框架的,依然可以使用 Laravel 的服务容器,只要通过 Composer 安装 illuminate/container 就好了。想了解更多关于容器的知识?去读源码吧!容器在底层只有一个类 IlluminateContainerContainer 读完了你就会对容器如何工作有更深的理解。 初始化composer.json 安装laravel-container psr-4 autoload AppApplication helpers.php index.php 初始化composer.jsonvi composer.json { "name": "laravel/container", "description": "Laravel Container.", "keywords": ["container","laravel"], "license": "MIT", "type": "project", "require": { "php": "^7.0.0" }, "autoload": { }, "minimum-stability": "dev", "prefer-stable": true } 安装laravel-containercomposer require illuminate/container psr-4 autoloadvi composer.json { "autoload": { "files": [ "app/Support/helpers.php" ], "psr-4": { "App": "app/" } } } AppApplicationvi app/Application.php namespace App; use IlluminateContainerContainer; class Application extends Container { public function __construct() { static::setInstance($this); } } helpers.phpvi app/Support/helpers.php function app($abstract = null,array $parameters = []) { if (is_null($abstract)) { return IlluminateContainerContainer::getInstance(); } return IlluminateContainerContainer::getInstance()->make($abstract,$parameters); } index.phpvi public/index.php require __DIR__ . '/../vendor/autoload.php'; $app = new AppApplication(); $app->instance('name','Cuber'); s($app->make('name')); s(app('name')); s(app()); (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |