Laravel 6.2 中添加了可调用容器对象的方法

所属分类: 网络编程 / PHP编程 阅读数: 1960
收藏 0 赞 0 分享

Laravel小组上周发布了v6.2.0 ,其中包含 针对已登录用户的新的密码确认流程以及可调用的容器对象。现在,让我们去了解一些尚未发布的一些其他新功能,在发行说明中表示已经可以使用:

首先,Container::call 现在支持可调用对象。下面是pull请求的测试,它演示了它的工作原理:

class ContainerCallCallableStub
{
 public function __invoke(ContainerCallConcreteStub $stub, $default = 'jeffrey')
 {
  return func_get_args();
 }
}

$container = new Container;
$callable = new ContainerCallCallableStub;
$result = $container->call($callable);
$this->assertInstanceOf(ContainerCallConcreteStub::class, $result[0]);
$this->assertSame('jeffrey', $result[1]);

接下来,框架身份验证中间件添加了一个 unauthenticated 的方法。每个 Laravel 项目都有一个扩展框架中间件的 Authenticate 中间件类,使您能够覆盖unauthenticated 行为:

接下来,

class Authenticate extends Middleware
{
 /**
  * 获取用户未通过身份验证时应重定向到的路径。
  *
  * @param \Illuminate\Http\Request $request
  * @return string
  */
 protected function redirectTo($request)
 {
  if (! $request->expectsJson()) {
   return route('login');
  }
 }

 protected function unauthenticated($request, array $guards)
 {
  // 自定义未经验证的逻辑
 }
}

在测试套件中添加了一个新的便捷的 partialMock() 方法:

// 之前
$this->instance(Abstract::class, Mockery::mock(Abstract::class, function ($mock) {
 $mock->shouldReceive('call')->once();
})->makePartial());

// 之后
$this->partialMock(Abstract::class, function ($mock) {
 $mock->shouldReceive('call')->once();
});

您可以在下面查看新功能和更新的完整列表,以及github上6.1.0 and 6.2.0 之间的全部区别。当然你也可以在 GitHub v6 changelog上查看Laravel 6.0的完整发行说明:

v6.2.0

新增

  • 在 Container::call() 中添加了对可调用对象的支持` (#30156)
  • 为 postgreSQL 添加 multipolygonz 类型 (#30173)
  • 在 auth 中间件中添加 "unauthenticated" 方法 (#30177)
  • 添加 partialMock 速记 (#30202)
  • 允许 Storage::put 接受 PSR 流接口 (#30179)
  • 实现新的密码规则和密码确认 (#30214)

更新

  • 删除了传递给updatePackageArray方法的不必要参数 (#30155)
  • DatabaseUserProvider添加了可选的连接名称 (#30154)
  • 删除了 php artisan serve URL周围的括号 (#30168)
  • 将限制应用从集合移到了数据库 (#30148)
  • 允许在嵌套查询中使用作用域 (#30127)
  • 添加数组到sqlite的json转换 (#30133)
  • 使用policies()方法代替属性策略 (#30189)
  • 拆分hasValidSignature方法 (#30208)

既定

validateDimensions() 处理 image/svg  (#30204)

以上所述是小编给大家介绍的Laravel 6.2 中添加了可调用容器对象,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

更多精彩内容其他人还在看

TP5(thinkPHP5)框架基于ajax与后台数据交互操作简单示例

这篇文章主要介绍了TP5(thinkPHP5)框架基于ajax与后台数据交互操作,结合实例形式分析了thinkPHP5前端基于jQuery的ajax数据提交及后台数据接收、处理相关操作技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

PHP利用Mysql锁解决高并发的方法

这篇文章主要介绍了PHP利用Mysql锁解决高并发的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

php 后端实现JWT认证方法示例

这篇文章主要介绍了php 后端实现JWT认证方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

ThinkPHP框架实现定时执行任务的两种方法分析

这篇文章主要介绍了ThinkPHP框架实现定时执行任务的两种方法,结合实例形式分析了2种被动执行定时任务的相关操作技巧与注意事项,需要的朋友可以参考下
收藏 0 赞 0 分享

PHP命名空间与自动加载类详解

这篇文章主要介绍了PHP命名空间与自动加载类,结合实例形式详细分析了php自动加载类与命名空间原理、使用方法及相关操作注意事项,需要的朋友可以参考下
收藏 0 赞 0 分享

PHP时间处理类操作示例

这篇文章主要介绍了PHP时间处理类,结合实例形式分析了DateTime、DateTimeZone、DateInterval及DatePeriod等常用日期时间处理类简单操作技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

利用PHP扩展Xhprof分析项目性能实践教程

XHProf是Facebook开发的性能调试工具,能帮助直观的统计显示PHP程序执行中各方法函数调用次数和消耗时间,以方便我们排查性能瓶颈并进行调优。下面这篇文章主要给大家介绍了关于利用PHP扩展Xhprof分析项目性能实践的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

Django 标签筛选的实现代码(一对多、多对多)

这篇文章主要介绍了Django 标签筛选的实现代码(一对多、多对多),本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

PHP使用pdo实现事务处理操作示例

这篇文章主要介绍了PHP使用pdo实现事务处理操作,结合实例形式较为详细的分析了php基于pdo实现事务处理的相关原理与操作技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

thinkPHP框架实现类似java过滤器的简单方法示例

这篇文章主要介绍了thinkPHP框架实现类似java过滤器的简单方法,结合实例形式分析了thinkPHP基于继承实现的登录验证功能相关操作方法,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多