首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

通过 Tinker 实现 Laravel 命令行交互式 Shell

原生 PHP ,我们也可以使用类似的交互式 Shell,通过 php -a 命令即可: 此外,还可以通过 PsySH 实现,相较于原生 php -a,PsySH 拥有更多高级特性,因此功能更加强大...Laravel Tinker 就是基于 PsySH 实现,与 Artisan 主要用于编写和执行 Artisan 命令不同,通过 Tinker,我们可以命令实现与 Laravel 应用各种交互...命令通过 php artisan tinker 即可进入 Laravel Tinker 交互式 Shell。...查看帮助文档 Laravel Tinker ,doc 命令可用于查看某个函数或方法帮助文档,例如,我们想查看辅助函数 config() 如何使用,可以这么做: 就会将 config() 函数文档信息打印出来...运行 Artisan 命令 此外,每次我们运行 php artisan tinker 就相当于从控制台启动了 Laravel 应用,在运行交互式命令前,tinker 命令会添加一些命令到 Shell,这些命令定义

1.8K30
您找到你想要的搜索结果了吗?
是的
没有找到

自定义laravel 辅助函数

自定义laravel 辅助函数 Laravel 包含各种各样全局「辅助」PHP 函数,你可以找到并使用它们,但是 ,可能并不是所有的内置方法都能满足你,因此我们需要自定义一个辅助方法。...方法如下: 我们将自定义方法存放在 bootstrap/helpers.php 文件 bootstrap/ 文件下创建 helpers.php 。...命令来验证线下我们方法 php artisan tinker 然后 tinker 交互输入我们测试方法 hello() PHP Fatal error: Call to undefined function...App\\": "app/" }, "files": [ "bootstrap/helpers.php" ] }, 最后项目根目录执行...做了这些工作,我们辅助方法,就可以正常运行了,继续使用 tinker 输入 hello() ,应该会输出 hello word 字样

63230

Laravel Bash 别名

例如,如果你使用 Git,你可能会在一天内运行很多次 git status,而为了节省时间和按键次数,你可以将 git status 命名为 gs,它自动继承和调用正确命令。...假设你开始项目里研究一个新功能(比如尝试使用别人开发包),这个过程你可能会添加一些新文件,折腾过后你可能会发现这个功能并不怎么好用。...然后你就可以通过运行「nah」命令来一口气删除这个过程你所做一切。 如何创建自己别名 对于那些也想尝试创建 bash 别名的人来说,这个过程很简单。...另外,要记得每次修改 bash_aliases文件之后,你都需要运行 source 命令或重新启动终端,让更改内容得以生效。...来自 Laravel 社区 Laravel Bash 别名 以下列出了所有国外 Laravel 社区贡献者以及他们正在使用内容。

1.8K20

Laravel 5.0 发布, 海量新特性!!

Tinker / Psysh php artisan tinker 命令新版本借助了 Justin Heleman 开发 Psysh....如果你喜欢 Laravel 4.0 里 Boris, 你肯定会喜欢 Psysh. Boris Windows 下运行得不好, Psysh 完全支持 Windows!...使用方法和以前一样: php artisan tinker DotEnv Laravel 5.0 , 用 Vance Lucas 实现 DotEnv 替代了以前版本嵌套结构, 容易让人困惑环境配置目录...这个框架提供了一种非常简单管理环境配置方式. Laravel 5.0 检测和区分不同运行环境变得轻而易举. 了解更多详情, 请访问完整配置文档....这意味着当你控制器被调用时, 你可以安全地使用该请求包含输入数据, 因为他们已经被你表单请求类中指定规则进行过验证了.

4.1K60

orm 系列 之 Eloquent使用2

本文会按照下面的顺序介绍: Model创建 CRUD操作 查询和聚合操作 Hydrate 组合查询 Model创建 laravel,创建一个model非常简单,我们可以通过下面的命令创建 php...original,然后通过现在attributes和original比较来知道哪些字段需要更新,执行更新操作时候,自然就是下面的操作了,只会跟新dirty字段。...php artisan tinker进入命令,然后通过下面的方法,返回一些数据: >>> App\Book::all() => Illuminate\Database\Eloquent\Collection...key和Modelattribute对应,Eloquent方法是直接将属性存储为一个$attributes数组,然后由用户自己根据字段名进行获取,但是,其实这也会有个问题,就是一旦字段名更改了,我们必须要去更改所有直接使用字段名地方...组合查询 组合查询也是非常酷一个功能,我们开发时常会写出各种各样名字查询,如getLongBook,getCheapBook,getLongAndCheapBook等等,每次这种查询我们都必须要去写个方法

53741

Laravel 编写第一个 Artisan 命令

Laravel ,我们可以通过三种工具实现命令行交互: Artisan:Laravel 内置命令行操作工具集,支持自定义命令Tinker:一个由 PsySH 扩展包驱动 REPL,允许你通过命令行与整个...optimize:优化应用以便提供更好性能 serve:本地 localhost:8000 端口启动 PHP 内置服务器 tinker:进入 Tinker REPL dump-server:启动...--env:允许你指定命令运行环境 --version:打印当前 Laravel 版本 上述选项可以单独运行,也可以和具体命令一起运行。...Artisan 命令,这种需求实际项目开发还是常有的,比如数据迁移、数据修复、定时任务等。...基于闭包实现简单业务逻辑一样,对于这么简单命令,我们也可以 routes/console.php 基于闭包实现: Artisan::command('welcome:message_simple

3.1K20

laravel 实现用户登录注销并限制功能

up函数中加上这两个字段,后面可以按自己需求添加属性。 laravel默认字符集是utf8mb4,新增数据库字段会有这个字符集,想要改成utf8 可以直接修改datebase ?...接下来运行数据迁移命令 php artisan migrate 来创建数据表 ? 运行之后数据库中新增了admins表 ?...3.填充数据 因为还没有做注册所以我们利用tinker来表填充数据,如果已经做了注册功能就不用坐下面的步骤了,也可以直接运行sql,直接 填充,保证密码加密。 首先在配置添加想要新增数据。...之后运行php artisan tinker 命令 里面输入 factory(模块命名,条数); 运行之后数据库中新增了三条数据,实例密码都是admin。 ?...首先做一个中间件,让每个页面控制器运行之前先运行中间件,我们中间件写一些页面是否有权限访问动作。 ? 运行之后里面填写验证指定表用户是否登陆 ?

2.4K21

Laravel Ignition 功能全解析

尽管 Laravel Whoops 是默认值,但它是一个框架无关(错误收集展示)。它仅仅显示通用信息。 ? 这是 Ignition 截图,我们建立错误视图。...你必须(鼠标)悬停在它上面才能看完整(信息)。堆栈跟踪,您可以看到使用了编译后 Blade 视图和内容。这使得跟踪哪个 Blade 视图文件包含错误变得困难,并且视图内容本身是不可读。 ?... Context 选项卡,我们显示关于您 repo (repo 位于何处,签出提交 hash) 和环境 (您使用 PHP 和 Laravel 哪个版本) 信息。 调试选项卡 ?...该包是一个基于 spatie/laravel-web-tinker 包装器,它允许您在浏览器中使用 Artisan tinker。...安装了 facade/ignition-tinker-tab,您就可以错误页面上使用 Artisan tinker。 ?

3.1K40

使用 Laravel sharedLock 与 lockForUpdate 进行数据表行锁「建议收藏」

transaction 要更新同一个计数器,如果不使用 lockForUpdate, 会导致两个 transaction 同时读到同一个初始值,然后应用层逻辑增加计数之后,提交到数据库,后者操作会覆盖掉前者操作...只有第一个终端执行 commit; 第二个终端才能得到数据返回。 需要注意是,发起者必须在 transaction 里上锁才有效,如果不是 transaction ,上锁是无效。...但是,第二个人无论是不是 transaction 里,都会被锁。 我依然有几个疑问 Laravel 如何设置数据库操作超时时间 什么场景下适合使用 sharedLock 呢?...如何测试 Laravel A 用户,浏览器里访问接口 (模拟支付回调),此时对数据表某一行锁住,进行 30s 操作,然后提交事务。...简单测试方法,是命令开两个 artisan tinker 窗口,分别执行 DB::transaction(function () { echo 1; User::where('id', 33

2.5K10

使用 Laravel sharedLock 与 lockForUpdate 进行数据表行锁

transaction 要更新同一个计数器,如果不使用 lockForUpdate, 会导致两个 transaction 同时读到同一个初始值,然后应用层逻辑增加计数之后,提交到数据库,后者操作会覆盖掉前者操作...只有第一个终端执行 commit; 第二个终端才能得到数据返回。 需要注意是,发起者必须在 transaction 里上锁才有效,如果不是 transaction ,上锁是无效。...但是,第二个人无论是不是 transaction 里,都会被锁。 我依然有几个疑问 Laravel 如何设置数据库操作超时时间 什么场景下适合使用 sharedLock 呢?...如何测试 Laravel A 用户,浏览器里访问接口 (模拟支付回调),此时对数据表某一行锁住,进行 30s 操作,然后提交事务。...简单测试方法,是命令开两个 artisan tinker 窗口,分别执行 DB::transaction(function () { echo 1; User::where('id', 33

2.5K20

Python 与机器学习,服务器使用过程,常用 Linux 命令包括哪些

本博客旨在分享实际开发过程,开发者需要了解并熟练运用 Linux 操作系统常用命令。...Screen 是一个全屏窗口管理器,它允许用户单个物理终端上运行多个终端会话。 # 这个命令用于列出当前用户所有屏幕会话。每个会话都有一个唯一编号和名称。...# 这是 Screen 一个快捷键组合,用于暂时断开当前屏幕会话,并将控制权返回给本地终端。这样,用户可以本地终端执行其他命令,而不会影响屏幕会话程序运行。...可以使用以下命令运行它: vmstat 1 top:这个命令用于实时监控系统进程状态,包括 CPU 使用率、内存占用等信息。...综合起来,这个命令作用是系统查找与指定应用名相关进程,并显示它们详细信息。 这个命令是用于查看当前系统中所有进程详细信息,并按照内存使用量(RSS)进行降序排序。

5400

3分钟短文:Laravel模型读数据那个“障眼法”

laravel框架继承了广泛使用稳定可靠 Carbon 类库用于操作日期时间。...为了测试方便,我们不需要写额外代码,直接使用 tinker 命令行交互工具,命令行输入: tinker 进入交互界面,然后我们使用模型查询一条 events 表数据,并访问其属性: namespace...访问器 其实上一节所说日期时间格式化,正是laravel模型访问器功能。专门用于模型层面,修改模型属性展示方式。定义一个访问器非常简单,就是模型内添加规范格式方法函数。...程序内使用 ->name 访问时候,就会调用该方法。...我们仍然使用 tinker 进行临时测试: namespace App; $e = new Event; $e->name = "let's learn a Little Laravel together

92211

laravel + passportAouth2.0全解

二、心得&重点: 1、完全理解透彻一次使用 1、一定要把Aouth2.0和laravel自带API区分开。...比如·laravel/tinkerlaravel/passport依赖laravel/passport 7.2之类·提示,我是选择修改package.json来composer update。...里面还有session、csrf_token等解决方案 1.1.1 php artisan passport:install命令: Aouth2.0密码模式~注册登录必须用该命令oauth_clients...1.1.2 php artisan passport:client命令: 这个命令oauth_clients中生成一行带user_id,其他表没有任何反应。...每运行一次生成一个用户端、每使用一个请求都出现一次授权页面(用户端通过code模式获取access_token) 1.2 模拟客户端全配置: 文件:routes/web.php <?

3.7K30

Laravel 服务提供者指南

本教程还将演示如何在 Laravel 创建一个自定义服务提供者。另外,如果你需要在 Laravel 成功使用服务容器,还需要注册它。那么,让我们开始吧。...Laravel 文档描述如下: Laravel 服务容器是用于管理类依赖和执行依赖注入工具 - Laravel 文档 这样,当我们需要注入一个内置组件或服务时,可以构造函数或方法中使用类型提示功能注入...,然后使用时从服务容器自动解析出所需实例及其依赖!...朋友,你问题太多了:Laravel 只是一个框架,它不是一个超级英雄,不是么?我们当然需要去明确告知 Laravel 框架我们有哪些服务提供者。... register 方法,我们使用服务容器 bind 方法将服务绑定到容器。

1.8K00

Laravel5.8开发环境搭建与CRUD应用实践

在这个面向初学者教程,我们将学习如何使用最新PHP开发框架Laravel 5.8,来创建一个基于MySQL数据库Web应用,实现联系人增删改查功能。...可以使用下面的命令来验证安装版本: ~$ cd crud-app ~/crud-app$ php artisan -V Laravel Framework 5.8.19 3、安装Laravel项目的前端依赖库...=root DB_PASSWORD=****** 现在,可以运行migrate命令来创建Laravel需要SQL数据表了: ~/crud-app$ php artisan migrate 5、创建第一个...现在可以使用下面的命令在数据库创建contracts表: ~/crud-app$ php artisan migrate 现在让我们看一下Contract模型,我们将使用它来和contracts数据表交互...终端运行下面的命令: ~/crud-app$ php artisan make:controller ContactController --resource 打开app/Http/Controllers

6.2K30

Laravel使用 DingoAPI

Laravel使用 DingoAPI 安装laravel 这里以5.5版本为例 composer create-project laravel/laravel laravel-api --prefer-dist...\Tinker\TinkerServiceProvider [7] Tag: laravel-mail [8] Tag: laravel-notifications [9] Tag: laravel-pagination...和 API_DOMAIN : 前缀和子域名, 前缀或子域名是必须,并且同时只有一个 API_NAME : API名字只有使用API Blueprint命令生成文档时候才用到,这个名字作为默认名字以免生成文档时需要手动指定名字...来进行测试 推荐使用 POSTMAN 调试工具, 网址输入地址 http://laravel-api.test/api/test ,不出意外 应该会输出 hello world 字样 另外一种很常见访问方式是通过...ok,以上就是 laravel 初步安装 DingoApi ,并且配置基础教程,更多使用请阅读 官方文档

2.1K10
领券