Laravel 7.14发布
Laravel团队发布了v7.14.0,该版本在渲染期间提供了组件属性,并根据mime-type猜测了文件扩展名,以及7.x分支的最新功能,修复和更改。
查看渲染方法中可用的属性
TaylorOtwell贡献了视图组件返回Closure 以数据属性为参数的a的能力 :
$this->attributes 组件的render方法中当前 为null。通过允许组件Closure 从渲染返回a来延迟模板构建,从而解决了该问题, 这使您可以做一些非常时髦的事情。
public function render() { return function ($data) { //$data['attributes']; // $this->attributes; } }
猜测文件扩展名
IlliaSakovich提出了一种 方法“如果我们想知道没有扩展名的文件的扩展名,可能会很有用。”File::guessExtension()
它通过mime类型猜测文件扩展名:
>>> File::name(public_path('image.png')) => "image" >>> File::extension(public_path('image.png')) => "png" >>> File::guessedExtension(public_path('image.png')) => "png" >>> File::copy(public_path('image.png'), public_path('image')) => true >>> File::name(public_path('image')) => "image" >>> File::extension(public_path('image')) => "" >>> File::guessedExtension(public_path('image')) => "png"
Http客户端toPsrRequest()
@thomasdominic贡献了 toPsrRequest() “当我们使用http伪造时允许重新构建TransferStats属性”的方法:
Http::fake([ 'https://external_api.com/403' => function (Request $request) { $http_response = Http::response("", 403); $http_response->TransferStats = new TransferStats($request->toPsrRequest()); return $http_response; } ]);
MessageBagaddIf()方法
泰勒·奥特威尔(TaylorOtwell)贡献了 addIff() 一种有条件地将消息添加到消息袋的方法:
$messageBag->addIf( someCondition(), 'name', 'Example message.' );
发行说明
您可以在下面查看新功能和更新的完整列表,以及GitHub上7.13.0和7.14.0之间的区别。
v7.14.0
添加
视图:使属性在render方法中可用(#32978)
forceDeleted 向SoftDeletes (#32982)添加了 方法
添加的 方法(#33001,d26be90)Illuminate\Filesystem\Filesystem::guessExtension()
新增 (#33016)Illuminate\Http\Client\Request::toPsrRequest()
添加的 方法(50efe09)Illuminate\Support\MessageBag::addIf()
提供 psr/container-implementation (#33020)
支持PHP8的反射API(#33039,6018c1d)
固定的
在Windows中还原 绝对的'/'行为(#32969)app()->getCached*Path()
解决了在Postgresql驱动程序和读取/写入连接中使用“粘性”选项的问题。(#32973)
修复了带日期的自定义类强制转换(2d52abc)
固定 (00e9ed7)Illuminate\Database\Eloquent\Collection::getQueueableRelations()
修复了更新现有枢轴和多态多对多(684208b)的错误
固定了顺风视图中的本地化(f2eb9ab)
已变更
将新行用于 route:list 中间件(#32993)
禁止使用保留名称生成命令(#33037)