也就是说,创建一个集合就这么简单: $collection = collect(['php', 'redis', 'laravel']); 默认情况下, EIoquent查询的结果返回的内容都是 Collection...'); // taylor #可以选择性地传递默认值作为第二个参数: $collection = collect(['name' => 'taylor', 'framework' => 'laravel...'); // taylor #可以选择性地传递默认值作为第二个参数: $collection = collect(['name' => 'taylor', 'framework' => 'laravel...= $collection->pluck('name'); $plucked->all(); // ['Desk', 'Chair'] #也可以通过传入第二个参数来指定生成的集合的键: $plucked...#70.union方法,将给定的数组添加到集合中。如果给定的数组中含有与原集合一样的键,则原集合的值不会被改变。
当然,你也可以根据使用的环境来随意更改这个数组。只需在配置文件中给每个 Redis 服务器指定名称、host(主机)和 port(端口)即可。...如果要使用这些额外的配置选项,可以将以下配置添加到 Redis 服务器的配置文件 config/database.php 中: 'default' => [ 'host' => env('REDIS_HOST...PhpRedis 扩展和 Redis Facade 共存,需要在配置文件 config/app.php 的别名配置中修改 Illuminate\Support\Facades\Redis Facade 别名,如修改为...'RedisManager' => Illuminate\Support\Facades\Redis::class, 除了默认的 host, port, database 和 password 这些服务配置选项外...你可以将这些配置选项添加到配置文件 config/database.php 中 Redis 服务配置项下: 'default' => [ 'host' => env('REDIS_HOST',
默认情况下,Laravel 的控制器基类使用 ValidatesRequests trait,它提供了一种方便的方法去使用各种强大的验证规则来验证传入的 HTTP 请求。...关于数组数据的注意实现 如果你的 HTTP 请求包含一个 「嵌套」 参数(即数组),那你可以在验证规则中通过 「点」 语法来指定这些参数: $request->validate([ 'title...正如前面所提到的,Laravel 会自动把用户重定向到之前的位置。另外,所有的验证错误信息会被自动 存储到 session。 重申一次,我们不必在 GET 路由中将错误消息显式绑定到视图。...关于可选字段的注意事项 默认情况下,在 Laravel 应用的全局中间件堆栈 App\Http\Kernel 类中包含了 TrimStrings 和 ConvertEmptyStringsToNull...如果 nullable 的修饰词没有被添加到规则定义中,验证器会认为 null 是一个无效的日期格式。 AJAX 请求 & 验证 在这个例子中,我们使用传统的表单将数据发送到应用程序。
下面的截图是 Whoops,这是 Laravel 5 中的标准。它比默认的 Symfony 好得多,可以显示堆栈跟踪和一些关于请求的信息。...尽管在 Laravel 中 Whoops 是默认值,但它是一个框架无关的(错误收集展示)。它仅仅显示通用信息。 ? 这是 Ignition 的截图,我们建立的新的错误视图。...默认情况下是 PhpStorm 。您可以在 ignition配置文件中将其配置为您最喜欢的编辑器。 注意到右上角的那个小 “望远镜” 链接了吗?...您可以添加新选项卡或替换默认选项卡。 让我们看一下提供的 facade/ignition-tinker-tab。...这个选项卡替换了默认的 stack trace 选项卡,使用一个自定义选项卡,允许您在错误屏幕上编辑代码。它就在如下操作。 ?
而作为最流行的 PHP 框架,Laravel 自然也是为处理用户请求提供了丰富的工具集,从收集、验证、到过滤、编排,可谓是一应俱全,接下来,我们将通过三四篇教程的篇幅来为你详细介绍如何在 Laravel...request->all()); } 为了测试这段代码,我们可以在 Postman 中模拟请求数据,不过在测试前需要在 app/Http/Middleware/VerifyCsrfToken.php 中间件中将测试路由排除在外...该方法可以从所有请求方式中获取给定字段的值,所以更加通用: $id = $request->input('id'); $name = $request->input('name'); 我们还可以为 input 方法传递第二个参数作为默认值...,如果请求字段为空的话,则使用该默认值: $site = $request->input('site', 'Laravel学院'); 获取数组输入字段值 有的时候,我们在表单中传递给后端的可能是一个数组...,比如一些复选框选中项,这些表单输入框的 name 值通常是 name[],如 books[],这个时候传递到后端的 books 数据就是数组格式: ?
在config/app.php 内有 providers 数组,在引导 laravel 应用初始化 时,利用该数组进行处理(真的绑定了) 1.2处理请求 请求 –(必经app/http/kernel.php...当然,你可以对composer的全局进行设置 composer默认会从packagist中寻找依赖,packagist 是默认来源。...require 指定依赖添加到composer.json中,并根据现状,执行 i 或 u 命令 dump-autoload 目前理解是。因为有的依赖带有autoloade信息。...选项) 详见:https://learnku.com/docs/laravel/6.x/artisan/5158#arguments 参数跟函数感觉起来差不多。虽然说写法有点区别,参数 的写法是名字。...选项带有两个横杠 — 参数是必填的东西,选项是可填的东西,填/不填的情况下可指示布尔值。
引言 上一章我教会大家如何在3分钟的时间,通过laravel跻身geek之列(听一下就好[捂嘴.jpg])。实现了一个简单的命令行,和一个复杂的发送邮件通知的功能。...先说第一种方式,也分为两种,一种叫参数 argument,一种叫选项 option。在laravel程序里,这两个名字没有变化。...{userId}'; 假设上述类已经完成功能开发,在命令行中调用: php artisan password:reset 5 在代码中使用 $this->argument() 方法,打印其结果是一个数组...因为那些事laravel Command 类默认追加上的,只要继承了基类都天然自带这些选项。...; 如果输入的是密码敏感数据,默认是不能展示在终端的,使用 secret方法: $password = $this->secret('What is the password?')
" php artisan migrate 接下来,如果您想利用 Sanctum 对 SPA 进行身份验证,您应该将 Sanctum 的中间件添加到您应用的 app/Http/Kernel.php 文件中的...9默认是注释掉的,需要取消注释 API 令牌认证 发布 API Tokens 要开始为用户颁发令牌,你的 User 模型应使用 Laravel\Sanctum\HasApiTokens trait..., Notifiable; } Laravel 9已经默认添加了 要发布令牌,你可以使用 createToken 方法。...你可以将字符串能力数组作为第二个参数传递给 createToken 方法: return $user->createToken('token-name', ['server:update'])->plainTextToken...修改 sanctum 的配置文件中的 expiration 选项(默认为 null),此选项设置的数字表示多少分钟后过期: // 365天后过期 'expiration' => 525600, 如果您的程序中配置了
二、laravel-ide-helper介绍 Laravel IDE Helper 是一个比较好用的代码提示及补全工具,可以给编写代码带来极大的便利。...:在 config/app.php 中的 providers 数组中加入 Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class, 或在 app...你可以选择要包含的辅助函数文件,默认该选项并未开启,但是你可以通过--helpers选项覆盖默认配置。...默认会引入Illuminate/Support/helpers.php,当然你还可以在配置文件中添加自定义的辅助函数文件。...四、知识拓展 知识扩展:Composer 在运行过程中将会触发以下事件: 事件名称 详细说明 pre-install-cmd 在 install 命令执行前触发。
关于一致性的说明 使用一组约定(如REST)的最大优点是您的API将更容易消费和开发。...在您遵循下载说明(并添加到您的路径环境变量)后,使用以下命令安装Laravel: $ composer global require laravel/installer 安装完成后,您可以像这样创建(手脚架...$table->timestamps() 将会为我们生成时间戳——在created_at和updated_at时,但是不用担心设置一个默认的,Laravel将在需要时更新这些字段。...标准成功代码和默认选项。 201:创建对象。有用的store行动(action)。 204: 无内容。当一个动作执行成功,但没有内容返回。 206:部分内容。当您必须返回分页的资源列表时很有用。...无法通过验证的请求的标准选项。 401:未经授权 用户需要进行身份验证。 403:禁止 用户已通过身份验证,但没有执行操作的权限。 404: 未找到。当没有找到资源时,这将由Laravel自动返回。
所有 Laravel 应用都默认包含了 Tinker。...#带有默认值的可选参数... 'article:publish {article=foo}' 选项 选项类似于参数,是用户输入的另一种形式。...#在选项名称后指定其默认值 'article:publish {article} {--queue=default}' #选项简写 'article:publish {article} {--Q|queue...*}' #选项数组 'article:publish {--id=*}' root@php-fpm:/var/www/laravel-demo# php artisan article:publish...$queueName = $this->option('queue'); // 检索所有选项做为数组...
所以,作为 PhpStorm 代码调试教程的姊妹篇,这篇教程学院君来给大家演示如何在 PhpStorm 中基于 Xdebug 扩展对 PHP Web 应用进行代码调试。...在 PhpStorm 中配置 Web 服务器 接下来,我们就来演示如何在 PhpStorm 中基于 Xdebug 来对上述测试代码进行调试和问题定位。...以便可以接收到服务端的远程调试连接,首先在 Preferences | Languages & Frameworks | PHP | Debug 中配置 Debug 端口与 Xdebug 扩展配置保持一致(Widows 中将...通过 Xdebug 调试 Laravel 应用 完成上述配置后,在代码编辑器中设置断点: ?...在下方代码调试区域就可以看到 posts 变量的值了,它是一个数组,而在视图模板中试图以对象方式访问其属性,自然会报错。
在本教程中,您将学习如何在Linux Web服务器上托管的Laravel应用程序上正确配置文件权限。 首先,确定运行Web服务器的用户名。...以下是一些默认情况 Linux上的Nginx使用帐户 - www-data Debian系统上的Apache使用account-www-data RedHat系统上的Apache使用帐户 - apache...sudo find /path/to/laravel -type f -exec chmod 644 {} \; sudo find /path/to/laravel -type d -exec chmod...bootstrap/cache 现在,您的Laravel应用程序受到适当权限的保护。...要解决此问题,请将您的用户添加到Web服务器用户组: sudo usermod -a -G www-data Ubuntu
由于默认的Laravel安装不需要我们将在本教程中设置的高级功能,因此我们将现有存储库从标准存储库切换到添加了一些调试代码的示例存储库,只是为了显示何时工作正常。...该ufw模块具有许多不同的选项,可执行不同的任务。我们需要执行的不同任务是: 默认情况下启用UFW并拒绝所有传入流量。 打开SSH端口,但速率限制它以防止暴力攻击。 打开HTTP端口。...因为makepasswd在Ubuntu上不是默认的,我们还需要将它添加到包列表中。 我们还会告诉Ansible记住命令的输出(即密码),以便我们稍后可以在我们的剧本中使用它。...默认情况下,Laravel的.env文件包含以下行: DB_HOST=localhost DB_DATABASE=homestead DB_USERNAME=homestead DB_PASSWORD=...Laravel附带默认调用的名为schedule:run的Artisan命令,该命令旨在每分钟运行并在应用程序中执行定义的计划任务。
本文中将会用到例子来自于我正在开发的一个叫做 SaveMyProposals 的新应用。 什么是 Command, Command handler 和 Command bus?...新版本提供了一个全新的 Artisan 生成工具,通过它可以快速生成这些文件: $ php artisan make:command DuplicateTalkCommand 默认情况下,这条命令会生成一个自处理的命令...(不生成单独的 Command handler),并且该命令不添加到队列。...,从数组或者请求对象中获得具体的值。...会自动在传入的数组或者 arrayAccessible 对象中去寻找与属性名相同的 key, 取出对应的值来调用命令的构造函数。
示例:Illuminate\Database\Eloquent\Model.php,如query()方法中(new static)->newQuery(); F.Laravel中使用的其他新特性 1.trait...,默认内容不是必须的 @include(‘子视图名称’):用于在视图文件中加载子视图文件,使得视图文件结构清晰 六、Laravel框架中的设计模式 A.服务容器 1.将服务理解为系统运行中需要的东西,如对象...2.在配置加载的过程中设置的参数都可以在.env文件中进行设置,而.env中对环境的配置将会覆盖配置加载项,当然,也可以修改不覆盖 3.外观注册分为两个步骤:一是完成外观自动加载类的实例化并将外观别名数组添加到该实例中...一是容器核心别名,存在Application中的$aliases,另一个是外观别名,定义在app.php配置文件中,程序运行后存储在AliasLoader类实例的$aliases属性中 5.在服务提供者的注册过程中将服务提供者分为三类...,在使用服务容器进行解析时,如果发现这个服务在延时服务数组中,则会注册 D.响应的发送与程序终止 八、服务容器与服务提供者 A.服务容器 1.Laravel中服务容器相当于大脑,服务提供者相当于神经系统
Laravel 应用进行交互; Laravel 安装器,这个我们在框架安装部分已经提到过,比较简单,不再单独介绍。...内置 Artisan 命令 运行 php artisan list 命令后,你会看到新安装的 Laravel 应用默认提供了很多 Artisan 命令,我们不可能把每一个都讲一遍下来(实际上,我们会在每篇教程中分散提到...、调试 --no-interaction:不会问任何交互问题,所以适用于运行无人值守自动处理命令 --env:允许你指定命令运行的环境 --version:打印当前 Laravel 版本 上述选项可以单独运行...分组命令 php artisan list 罗列出的其它命令都是被分门别类的,我们不会详细介绍所有命令,大致看一下分组: app:只包含 app:name 命令,用于替换应用默认命名空间 App auth...打开 app/Console/Kernel.php,将新创建的命令类 WelcomeMessage 添加到 $commands 完成注册: protected $commands = [ App
图片 Laravel Admin 管理后台模板的不同类型 在搜索引擎中粗略搜索,你会得到大概 20多种 Laravel Admin 模板的选项,尽管它们表面上看起来很相似,但实际上在用途和架构存在着很大差异...这种结构提供了一种快速获得模块化管理后台的方法,它可以轻松地添加到一个新的应用程序中,或改装到一个现有的应用程序中。...通常大多数 Laravel 模型在 Nova 中工作无需任何额外的配置,但您可以定义具体的细节,如字段如何被编辑等。 此外,Nova 另一个值得关注的特点是允许您在一个或多个模型上执行自定义任务。...优点 优秀的文档,包含视频教程 强大的前端主题 非商业项目的免费选项 缺点 如果您想要所有工具和选项,则相对昂贵 Voyager 与我们目前看到的其他管理模板包不同,Voyager 是 Laravel...优点 适合编程经验有限的开发者 提供免费视频培训课程,让您快速学习 可以轻松扩展和覆盖默认的控制器 缺点 Laravel 的细粒度配置在视觉构建器中是很难实现的 与 Laravel 作为框架而不是 CMS
我们知道 Laravel 遵循 PSR-2 编码风格和 PSR-4 自动载入标准。...下面我们以一个 Laravel 项目为例进行演示。...1、PSR-4 在 Laravel 项目中,默认 \App 命名空间对应的是根目录下的 app 子目录,这可以通过 composer.json 进行配置: "autoload": { "psr-...选中要设置命令空间的 app 目录,可以看到当前它与 \App 根命名空间映射,你可以点击右侧小红框内的铅笔按钮进行编辑,在包前缀输入框中将其调整为你自己的应用名称: ?...下篇教程,学院君将给大家演示如何在 PhpStorm 中进行代码测试作为 PhpStorm 系列教程的收尾。 (全文完)
领取专属 10元无门槛券
手把手带您无忧上云