编程

Laravel 11.12:Artisan make 命令自动剪切 .php 后缀

237 2024-06-26 23:53:00

Laravel 团队发布了 v11.12,其中包括 multiply 集合方法,在 make 命令中自动剪切 .php 扩展名等。

当传入 make 命令时剪切 PHP 后缀名 (v11.11.1)

Jason McCreary在传递 .phpmake:* 命令时提供了一个很好的开发者体验特性,用于为控制器、事件、命令等生成文件。除了现在在幕后处理 .php 后缀之外,没有任何变化:

php artisan make:controller UserController.php
# Before - app/Http/Controllers/UserController.php.php
# After - app/Http/Controllers/UserController.php

当你不小心这样做时,会很痛苦,因为你必须移动文件或删除它们并重新创建所有内容。目前尚不清楚该命令是否会在键入时处理扩展插件的问题,所以这对一些隐藏的痛苦来说是一个很好的触动——至少对我来说是这样;)

将 multiply() 方法添加到集合

Patrick O'Meara 为集合提供了一个 multiply() 方法,该方法将集合中的项倍增。它的工作原理是将集合上的现有值乘以 x 次:

$c = collect([
    ['name' => 'User #1', 'email' => 'user1@example.com'],
    ['name' => 'User #2', 'email' => 'user2@example.com'],
])->multiply(2);

上例中的集合在调用 multiply(2) 后如下图所示:

将事件发现路径添加到事件服务提供者

如果你需要动态添加事件发现路径,@Jascha 提供了一个 addEventDiscoveryPaths() 方法到事件服务提供者。该特性不是常规情况下必须的,不过你可以如下这样使用:

use Illuminate\Foundation\Support\Providers\EventServiceProvider;
 
EventServiceProvider::addEventDiscoveryPaths('/some/path/to/events');
EventServiceProvider::addEventDiscoveryPaths([
    '/some/path',
    '/another/path'
]);

Release notes

You can see the complete list of new features and updates below and the diff between 11.11.0 and 11.12.0 on GitHub. The following release notes are directly from the changelog:

v11.12.0

v11.11.1