首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏硬核项目经理的专栏

    Laravel系列7.8】广播系统

    广播系统 广播系统指的是什么呢?在这里我们说的广播系统其实就是配合 WebSocket 实现的即时更新接口。什么意思呢? 今天的内容就是简单的搭起广播系统的环境即可,源码不多说了,因为广播系统实际上是使用了我们之前学习过的队列和事件来实现的。 Laravel 队列监听处理后的内容会到 laravel-echo-server 中,并由 laravel-echo 的服务端进行对前端的广播。 总结 开心不开心,爽不爽,搞了半天总算把这个广播系统调通了吧。相信你的付出一定会带来收获。整个广播系统非常复杂,仅在后端就有事件、队列的应用,而且还开了一个 node.js 服务。 如果你的系统中有类似的通知需求,完全可以考虑使用这套广播系统来实现了,多少还是比轮询的功能要强大许多,大家多多尝试就能体会到好处。最后我再引用一张某位大佬画的广播系统的关系图。

    3.5K20编辑于 2023-03-03
  • 来自专栏硬核项目经理的专栏

    Laravel系列7.5】事件系统

    事件系统 说到事件,你会想到什么?JS 中的回调函数,按扭的回调事件?没错,这些都是事件的应用。不过在 Laravel 中,事件是一种解耦机制,是 观察者 模式的一种体现。 如果你是新安装的 Laravel 环境,可能没有这两个目录,那么我们可以手动建立,也可以直接使用命令行生成对应文件,这些目录会被自动创建。 之前我们就说过,事件系统是用于解耦的,也就说,可以让多个监听器来监听同一个事件(就和 Redis 中的 Pub/Sub 一样),这样如果事件被调用触发的话,那么其实也是分发给多个监听器来处理。 事件系统本身非常庞大,里面的源码也比较复杂。从这个对象中的很多方法名字就可以看出来,号称优雅的框架在这个模块中的方法名字都这么长,就可想而知这个组件的复杂程度。 参考文档: https://learnku.com/docs/laravel/8.5/events/10387

    2.2K30编辑于 2023-03-03
  • 来自专栏PhpZendo

    深入研究 Laravel ORM (Laravel Eloquent) 系统 (一) – 概要

    本文作为 Laravel ORM 系统的研究开篇,主要对 Laravel ORM 系统的主要功能、依赖的第三方类库、系统的目录结构及对应目录所实现的功能,进行解释说明。 提供内置查询语句构造器,Eloquent ORM,表空间(schema)构造器实现 PHP 对数据库操作的 ORM 系统。 ORM 系统 |---- container Laravel 容器组件 |---- contracts Laravel 契约组件 |---- 二、 Laravel ORM 核心组件目录结构 前面我们大致了解了 Laravel ORM 系统整体的目录结构,本节我们重点走进 illuminate/database 文件夹,即 Laravel ORM 核心 2.1 文件结构 |---- database |---- Capsule 文件夹提供非 Laravel 框架以外的系统使用 Laravel

    5.9K20发布于 2018-09-17
  • 来自专栏PhpZendo

    Laravel 广播系统工作原理

    今天,让我们深入研究下 Laravel 的广播系统。广播系统的目的是用于实现当服务端完成某种特定功能后向客户端推送消息的功能。本文我们将学习如何使用第三方 Pusher 工具向客户端推送消息的功能。 如果您遇到在 Laravel 中需要实现当服务器处理完成某项工作后向客户端发送消息这类的功能,那么您需要使用到 Laravel 的广播系统。 这种使用场景可以完美诠释 Laravel 广播系统的工作原理。另外,本教程将使用 Laravel 广播系统实现这样一个即时通信应用。 如果您不知道如何使用默认认证服务,可以查看 Laravel 的用户认证系统 文档快速入门。 :10","updated_at":"2018-01-13 07:10:10"}},"channel":"private-user.2"} 如你所见,调试信息告诉我们我们接收来自 Pusher 服务器的

    10.3K20发布于 2018-09-17
  • 来自专栏网管叨bi叨

    Laravel源码解析之事件系统

    laravel 中事件系统由两部分构成,一个是事件的名称,事件的名称可以是个字符串,例如 event.email,也可以是一个事件类,例如 App\Events\OrderShipped;另一个是事件的 我们还是通过官方文档里给出的这个例子来向下分析事件系统的源码实现,不过在应用注册事件和监听器之前,Laravel在应用启动时会先注册处理事件用的 events服务。 Laravel注册事件服务 Laravel应用在创建时注册的基础服务里就有 Event服务 namespace Illuminate\Foundation; class Application extends events服务的监听和订阅方法来创建事件与对应的监听器还有系统里的事件订阅者。 Laravel的事件系统原理还是跟之前讲的观察者模式一样,不过框架的作者功力深厚,巧妙的结合应用了闭包来实现了事件系统,还有针对需要队列处理的事件,应用事件在一些比较复杂的业务场景中能利用关注点分散原则有效地解耦应用中的代码逻辑

    1.5K40发布于 2019-10-13
  • 来自专栏站长的编程笔记

    Laravel 10 更改密码后如何保持登录状态?

    我正在将 Laravel 10 与 Jetstream 一起使用, 我的一位客户不想在从 Laravel 默认配置文件页面更改密码后注销。  这是 Laravel 在密码更新后注销的默认行为。 

    1.2K10编辑于 2023-12-10
  • 来自专栏站长的编程笔记

    10个技巧优化PHP程序Laravel 5框架

    性能一直是 Laravel 框架为人诟病的一个点,所以调优 Laravel 程序算是一个必学的技能。 接下来分享一些开发的最佳实践,还有调优技巧,大家有别的建议也欢迎留言讨论。 性能一直是 Laravel 框架为人诟病的一个点,所以调优 Laravel 程序算是一个必学的技能。 接下来分享一些开发的最佳实践,还有调优技巧,大家有别的建议也欢迎留言讨论。 使用专业缓存驱动器 「缓存」是提高应用程序运行效率的法宝之一,默认缓存驱动是 file 文件缓存,建议切换到专业的缓存系统,如 Redis 或者 Memcached,不建议使用数据库缓存。 数据库请求优化 数据关联模型读取时使用 延迟预加载 和 预加载 ; 使用 Laravel Debugbar 或者 Clockwork 留意每一个页面的总数据库请求数量; 这里的篇幅只写到与 Laravel 10. 前端资源合并 作为优化的标准,一个页面只应该加载一个 CSS 和 一个 JS 文件,并且文件要能方便走 CDN,需要文件名随着修改而变化。

    6K20编辑于 2022-12-02
  • 来自专栏网管叨bi叨

    Laravel源码解析之用户认证系统(二)

    上一节我们介绍了Laravel Auth系统的基础知识,说了他的核心组件都有哪些构成,这一节我们会专注Laravel Auth系统的实现细节,主要关注 Auth也就是 AuthManager是如何装载认证用的看守器 $parameters); } } 用户注册 Laravel Auth系统中默认的注册路由如下: $this->post('register', 'Auth\RegisterController 用户登录认证 Laravel Auth系统的登录路由如下 $this->post('login', 'Auth\LoginController@login'); 我们看一下LoginController 用户认证系统的主要细节梳理完后我们就知道如何定义我们自己的看守器(Guard)或用户提供器(UserProvider)了,首先他们必须实现各自遵守的契约里的方法才能够无缝接入到Laravel的Auth系统中 下一节我会给出一个我们以前项目开发中用到的一个案例来更好地讲解应该如何对Laravel Auth系统进行扩展。

    2.8K30发布于 2019-10-13
  • 来自专栏全栈程序员必看

    使用Laravel的队列实现系统通知、

    使用Laravel的队列实现系统通知、 第一步:创建 jobs表的migrate php artisan queue:table 第二步:创建jobs 表 php artisan migrate 第三步

    79530编辑于 2022-07-07
  • 来自专栏生如夏花绚烂

    Laravel消息通知系统之数据库

    Laravel 自带了一套极具扩展性的消息通知系统,尤其还支持多种通知频道,我们将利用此套系统来向用户发送消息提醒。 通知频道指通知的各种途径,Laravel自带的有如下几种 数据库 邮件 短信(通过 Nexmo) Slack 通过数据库实现消息通知 1.准备数据表 php artisan notifications database/migrations/{$timestamp}_create_notifications_table.php 使用命令执行迁移文件 php artisan migrate 2.生成通知类 laravel

    1.4K20编辑于 2022-09-08
  • 来自专栏网管叨bi叨

    Laravel源码解析之用户认证系统(一)

    使用过Laravel的开发者都知道,Laravel自带了一个认证系统来提供基本的用户注册、登录、认证、找回密码,如果Auth系统里提供的基础功能不满足需求还可以很方便的在这些基础功能上进行扩展。 这篇文章我们先来了解一下Laravel Auth系统的核心组件。 Auth系统的核心是由 Laravel 的认证组件的「看守器」和「提供器」组成。看守器定义了该如何认证每个请求中用户。 下表列出了Laravel Auth系统的核心部件 名称 作用 Auth AuthManager的Facade AuthManager Auth认证系统面向外部的接口,认证系统通过它向应用提供所有与用户认证相关的功能 开始使用Auth系统 只需在新的 Laravel 应用上运行 php artisan make:auth 和 php artisan migrate 命令就能够在项目里生成Auth系统需要的路由和视图以及数据表 总结 本节我们主要介绍Laravel Auth系统的基础,包括Auth系统的核心组件看守器和提供器,AuthManager通过调用配置文件里指定的看守器来完成用户认证,在认证过程需要的用户数据是看守器通过用户提供器获取到的

    3.9K30发布于 2019-10-13
  • 来自专栏后端学习之道

    通过代码示例探索 Laravel 10 中的进程交互功能

    介绍 随着 Laravel 10 的发布,开发人员获得了多项新功能和改进,包括强大的进程交互功能。此功能允许开发人员更有效地与外部进程通信并在 Laravel 应用程序中执行 shell 命令。 此功能对于运行系统命令、与其他软件交互或执行后台进程等任务非常有用。 使用 Symfony 进程组件 在底层,Laravel 的进程交互功能利用了 Symfony Process 组件。 结论 Laravel 10 中的进程交互功能为框架带来了强大的补充,允许开发人员高效地与外部进程交互并在其应用程序中执行 shell 命令。 通过利用 Symfony Process 组件,Laravel 提供了一种强大而灵活的方式来管理子流程及其输入/输出流。 在你的操作中中使用这个功能,你可以创建更加动态和强大的 Laravel 应用程序。

    60610编辑于 2023-10-14
  • 来自专栏seth-shi的专栏

    记一次 Laravel5 升级到 Laravel10 经过 + 使用 octane 进行容器化

    laravel/laravel=10.* laravel10 这时候项目内多了一个/var/www/monday-shop/laravel10 依赖处理 更新依赖 把/var/www/monday-shop /laravel10/composer.json的require和require-dev部分更新到/var/www/monday-shop/composer.json(注意删除旧版本的部分) 删除/var 升级之后, 如果不确定这个依赖是否有用, 执行composer depends xxx/xxxx来查看是否有用, 如果不用到删除即可 文件更改 复制/var/www/monday-shop/laravel10 这些文件复制内容的时候需要仔细对比是否自己修改过 我处理的时候一般一个文件夹一个文件夹处理, 比如从app/Console开始处理 处理完之后删除app/Console目录(删除目录是/var/www/monday-shop/laravel10 ) 下一个目录是app/Exceptions, 重复1, 2 步骤, 直至/var/www/monday-shop/laravel10目录为空 处理报错 运行服务: php artisan serve

    79810编辑于 2024-04-29
  • Laravel——安装Laravel-admin

    前言 环境 : WAMP | Windows 7 | PHP 7.0.4 | MySQL 5.7.11 | Apache 2.4.18 框架 : Laravel | Laravel-admin 文档 : Laravel5.5文档 | Laravel-admin文档 操作位置 : wamp下的www目录,其实随便在哪的,个人习惯~ 安装Laravel框架 因为目前laravel-admin所支持的Laravel composer安装 composer create-project --prefer-dist laravel/laravel laravel-admin 5.5.* 连接数据库 数据库需要事先创建好 * * @return void */ public function register() { // } } 安装Laravel-admin composer安装 进入到laravel目录下后执行composer安装 composer require encore/laravel-admin 发布资源 在该命令会生成配置文件config/admin.php

    1K10编辑于 2024-08-16
  • 来自专栏全栈程序员必看

    Laravel框架_php laravel框架

    laravel框架 一、laravel简介 laravel是一套优雅简介的PHP开发框架,受欢迎程度非常之高,功能强大,工具齐全; https://www.jianshu.com/p/206592c78113 二、简单介绍 1、laravel是基于mvc模式的php框架,m——模型层,v——视图层,c——控制器层;以下为laravel框架的目录文件,框出来的文件目录将在后续中用到: 2、什么是MVC的开发思想 三、laravel目录结构整体分析 四、laravel路由 (一):简介 在laravel中,定义路由的地方在routes/web.php文件中。 在使用laravel前必须先定义路由,然后才能在浏览器中访问。routes文件夹中还有一个api.php,用于定义api路径。 laravel中请求类型包括:get、post、put、patch、delete。 1、基本路由 get请求: <?

    5.1K20编辑于 2022-11-03
  • 来自专栏生如夏花绚烂

    Laravel学习记录--laravel模板

    Laravel模板 resources/views 模板后缀: 模板名以php结尾 在模板中需使用 php原生解析变量 模板名blade.php结尾 直接使用{{变量}}即可 如果有xx.php 和 xxb.lade.php 两个同名模板,优先使用blade模板 laravel 方法名不需要与模板名对应 展示模板 1. return view('模板名',参数) 传递一维数组,模板直接调用数组元素 这时候可以使用laravel的模板继承,类似于面向对象的思想,子模板继承父模板,同时子模板可对父模板的“方法”进行重写 使用方法: 1. section 父模板中要变化的地方键入 @section(name

    2.7K20编辑于 2022-09-14
  • 来自专栏无道编程

    Laravel调试利器:Laravel Debugbar

    Laravel Debugbar用于直观的显示调试及错误信息,提高开发效率。以及可以提供项目优化。 安装 Laravel小于5.5安装版本 composer require barryvdh/laravel-debugbar:~2.4 最新版 composer require barryvdh/laravel-debugbar 相关地址 GitHub 地址:https://github.com/barryvdh/laravel-debugbar packagist地址: https://packagist.org/packages /barryvdh/laravel-debugbar

    2.2K00发布于 2019-11-13
  • 来自专栏硬核项目经理的专栏

    Laravel系统3.3】控制器与表单验证

    之前在讲路由的时候也说过这个问题,但是在 Laravel 中,实现了路由和控制器的解耦,所以我们的控制器是可以随意定义并且命名的,直接通过路由来进行绑定。 对于 REST 有疑问的同学可以自行查阅相关的文档,在这里就不多说了,毕竟我们的主旨还是在于 Laravel 框架如何实现这些功能。 Laravel 框架会自动帮我们配置以下这些路由,大家只要按照规则访问就好了。 既然说到这里了,那么在 Laravel 框架中,其实也是有对应的表单验证的功能的,可以方便地让我们进行表单参数的验证。 参考文档: https://learnku.com/docs/laravel/8.x/controllers/9368 https://learnku.com/docs/laravel/8.x/validation

    10.2K20编辑于 2023-03-03
  • 来自专栏php&laravel

    Laravel 的优雅之处 之,Passport搭建SSO系统

    Laravel 是一个流行的 PHP 框架,都说其在许多方面都优雅之处,比如:优雅的认证系统Laravel 自带的认证系统提供了一种优雅的方式来处理用户登录和注册,开发人员只需几行代码即可实现这些功能 今天我们就以 Laravel Passport 为例,搭建一个SSO系统。 对于 Laravel 的认证系统,可以通过使用 Laravel Passport 这个包来构建一个基于 OAuth2 的单点登录(SSO)系统。 ', $e->getCode()); }}这就是一个基本的 Laravel SSO 系统的搭建过程。 当用户在一个应用程序中进行身份验证时,该系统将颁发一个访问令牌,并将其传递到其他应用程序中,使用户能够在这些应用程序中保持登录状态。

    3.1K50编辑于 2023-06-13
  • 来自专栏PhpZendo

    深入浅出 Laravel 的 Facade 外观系统

    本文将从以下几个方面出发,全面讲解 Laravel 中 Facade 的运行原理,为了便于理解后续中所有 Facade 译作「外观」: 简单介绍「外观」设计模式; Laravel「外观」的加载原理; Laravel 什么是「外观」设计模式 外观模式定义 为子系统中的一组接口提供一个统一的入口。外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 外观模式是一种使用频率非常高的结构型设计模式,它通过引入一个外观角色来简化客户端与子系统之间的交互, 为复杂的子系统调用提供一个统一的入口,降低子系统与客户端的耦合度,且客户端调用非常方便。 将使用者与子系统从直接耦合,转变成由「外观」类提供统一的接口给使用者使用,以降低客户端与子系统之间的耦合度。 结构示意图: ? 将使用者与子系统从直接耦合,转变成由「外观」类提供统一的接口给使用者使用,以降低客户端与子系统之间的耦合度。

    3K20发布于 2018-09-17
领券