artisan tinker环境

通过 Laravel 提供的 Tinker 环境可以让我们完成Eloquent 模型数据对象创建。Tinker 是一个 REPL (read-eval-print-loop),REPL 指的是一个简单的、可交互式的编程环境。

进入环境,Ctrl + C退出:

$ php artisan tinker

创建对象:

>>> App\Models\User::create(['name'=> 'Aufree', 'email'=>'aufree@yousails.com','password'=>bcrypt('password')])

时区问题:修改配置项config文件夹 app.php的'timezone' => 'PRC',即可,需要重新进入tinker生效

1,查询

使用 use 来引用 App\Models\User Eloquent 模型类:

>>> use App\Models\User

这样我们就可以在后面的操作中直接调用 User 而不是完整的类名 App\Models\User

查找一个 id 为 1 的用户时,可以使用下面这种方法:

>>> User::find(1)

查询用户不存在时触发报错的话,可使用 findOrFail

>>> User::findOrFail(5)

查找用户表中的首个用户,可以使用 first 方法。还可以用 all 方法取出所有的用户数据:

>>> User::first()
>>> User::all()

 

2,更新

首先,让我们将用户对象从数据库中取出,并赋值给 user 变量

>>> $user = User::first()

使用属性赋值更新的方法对用户名进行更新,将其名字更改为 Summer

>>> $user->name = 'Summer'

调用 save 方法对用户信息进行保存。

>>> $user->save()

或者直接用update方法:

>>> $user->update(['name'=>'Aufree'])

 3,时间

diffForHumans 为我们生成的时间是英文的,如果要使用中文时间,则需要对 Carbon 进行本地化设置。Carbon 是 PHP DateTime 的一个简单扩展,Laravel 将其默认集成到了框架中。对 Carbon 进行本地化的设置很简单,只在 AppServiceProvider 中调用 Carbon 的 setLocale 方法即可,AppServiceProvider 是框架的核心,在 Laravel 启动时,会最先加载该文件。

    public function boot()
    {
        Carbon::setLocale('zh');
    }
>>> $created_at = App\Models\User::first()->created_at
>>> $created_at->diffForHumans()
=> "17年前"

 

posted on 2017-11-19 18:23  风小可  阅读(192)  评论(0编辑  收藏  举报