Laravel Inversion of Control (控制反转) 概念简介 | Laravel China 社区 - 高品质的 Laravel 和 PHP 开发者社区

本文内容部分摘自 Wikipedia .概述==IoC (控制反转),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。实现「控制反转」,有两种方式: Dependency Injection (DI) 依赖注入 Dependency Lookup 依赖查找 两者的区别在于,前者是被动的接收对象,在类实例创建过程中即创建了依赖的对...
阅读全文

Laravel 源码阅读指南 -- Contracts 契约 | Laravel China 社区 - 高品质的 Laravel 和 PHP 开发者社区

Contracts=========Laravel 的契约是一组定义框架提供的核心服务的接口, 例如我们在介绍用户认证的章节中到的用户看守器契约以及框架自带的`App\User`模型所实现的契约。 为什么使用契约通过上面几个契约的源码文件我们可以看到,Laravel提供的契约是为核心模块定义的一组interface。Laravel为每个契约都提供了相应的实现类,下表列出了L...
阅读全文

使用 Laravel 广播事件实现基于 Socket.io 的实时消息通知 | Laravel China 社区 - 高品质的 Laravel 和 PHP 开发者社区

本文将基于 `Laravel 5.5 + Vuejs 2.5.2` 介绍使用 `Laravelechoserver.js` 和 `Laravelecho.js` 实现的 服务前置条件 熟悉 的基本流程 熟悉 的基本流程 Redis服务端及 node & npm or yarn开始使用 指定事件广播驱动 修改`.env` 配置...
阅读全文

两个非常棒的 Laravel 权限管理包推荐 | Laravel China 社区 - 高品质的 Laravel 和 PHP 开发者社区

](https://lccdn.phphub.org/uploads/images/201708/14/5350/8choEeNVKl.png) 角色和权限是许多 Web 应用程序的重要组成部分。 有很多为这个部分而写的包,随着 Laravel 历史的发展官方也提供了相关的支持。那么今天这块市场的情况如何?有什么包是最好用的么?这里我有两个推荐。为什么需要包?追本遡源 ...
阅读全文

Laravel 中使用 PHP 分词库 (jieba) 和 (scws) | Laravel China 社区 - 高品质的 Laravel 和 PHP 开发者社区

laravel中使用php分词库(jieba)和(scws)============================== 坚持开源,坚持分享 这篇文章旨在介绍我用过的两个PHP分词库以及他们的简单使用 目的:完成一段段落的分词1.Jieba分词库Jieba分词库, 安装:```phpcomposer require fukuball/jiebaph...
阅读全文

Laravel 学习笔记 —— 神奇的服务容器 | Laravel China 社区 - 高品质的 Laravel 和 PHP 开发者社区

原文地址: ,转载务必保留来源,谢谢了! 容器,字面上理解就是装东西的东西。常见的变量、对象属性等都可以算是容器。一个容器能够装什么,全部取决于你对该容器的定义。当然,有这样一种容器,它存放的不是文本、数值,而是对象、对象的描述(类、接口)或者是提供对象的回调,通过这种容器,我们得以实现许多高级的功能,其中最常提到的,就是 “解耦” 、“依赖注入(DI)”。本文就从这里开始。...
阅读全文

在 Laravel 中使用 Workerman 进行 socket 通讯 | Laravel China 社区 - 高品质的 Laravel 和 PHP 开发者社区

1.安装 Workerman==============由于要使用客户端点对点通讯,选择了 `workerman/gatewayworker` 的扩展包,它已经引入了 `workerman/workerman` 。```php$ composer require workerman/gatewayworker```2.创建 Workerman 启动文件==========...
阅读全文

基于 Composer 的 PHP 模块化开发 | Laravel China 社区 - 高品质的 Laravel 和 PHP 开发者社区

](https://lccdn.phphub.org/uploads/images/201707/18/76/HvXgUVkBmt.png)这个话题之前是在微博公司内部做的技术分享,这里拿出来分享给大家。基于 GitHub 或者其它平台托管的开源项目的引入大家应该都已经非常熟悉了,但是公司内部项目的模块化应该怎么做呢?这或许是不少朋友头疼的问题。](https://lcc...
阅读全文

深入剖析 Laravel 服务容器 | Laravel China 社区 - 高品质的 Laravel 和 PHP 开发者社区

本文首发于 ,转载请注明出处。喜欢的朋友不要吝啬你们的赞同,谢谢。之前在 一文中,我们有去探究 Laravel 究竟是如何接收 HTTP 请求,又是如何生成响应并最终呈现给用户的工作原理。本章将带领大家研究另一个 Laravel 框架的核心内容:「服务容器」。有阅读过 的朋友应该有注意到在「核心架构」篇章中包含了几个主题:生命周期、服务容器、服务提供者、Facades 和 Co...
阅读全文

Laravel 的 Facade 实现原理 | Laravel China 社区 - 高品质的 Laravel 和 PHP 开发者社区

Laravel的Facade是什么?`Facade`其实是一个容器中类的静态代理,他可以让你以静态的方式来调用存放在容器中任何对象的任何方法。举个例子:```phpuse Illuminate\Support\Facades\Cache;Route::get('/cache', function () { return Cache::get('key');});`...
阅读全文