Browsed by
Tag: laravel

Eloquent ORM cheatsheet

Eloquent ORM cheatsheet

Defining model in Laravel Overide default database table name Overide default database table primary key Time stamps 时间戳 指定数据库连接 获取模型数据 Query Scopes /范围查询

The execution priorities of Laravel’s middlewares

The execution priorities of Laravel’s middlewares

Laravel 多个中间件的执行顺序 问题 一个路由需要用到多个中间件,其中一个是 Laravel 自带的 auth 中间件。 发现这个中间件不管放在哪里,总是在自定义中间件之前执行。 如果业务需要自定义中间在 auth 之前执行,还是有办法的。 解决方案 观察定义中间件的 app\Http\Kernel 类,是继承的 Illuminate\Foundation\Http\Kernel 类。 再打开 Illuminate\Foundation\Http\Kernel ,发现有这样一个数组 注释里写得比较清楚了:列表中的中间件会按照顺序优先在其他中间件之前执行。 那么需要自定义中间件在 auth 之前执行,只需要在 app\Http\Kernel 重载这个数组就行了。 auth 中间件对应的类 \Illuminate\Auth\Middleware\Authenticate,…

Read More Read More

PHP Magic Methods

PHP Magic Methods

魔术方法:两个下划线开头的格式。 PHP中的魔术方法总结 :__construct, __destruct , __call, __callStatic,__get, __set, __isset, __unset , __sleep, __wakeup, __toString, __set_state, __clone and __autoload ①__get、__set这两个方法是为在类和他们的父类中没有声明的属性而设计的__get( $property ) 当调用一个未定义的属性时访问此方法(获取)__set( $property, $value ) 给一个未定义的属性赋值时调用(设置)这里的没有声明包括当使用对象调用时,访问控制为proteced,private的属性(即没有权限访问的属性) ②__isset、__unset__isset( $property ) 当在一个不可访问的属性上调用isset()或empty()函数时被调用。__unset(…

Read More Read More