Laravel Cheat 表 http://cheats.jesse-obrien.ca/#
Artisan
php artisan --help OR -h
php artisan --quiet OR -q
php artisan --version OR -V
php artisan --no-interaction OR -n
php artisan --ansi
php artisan --no-ansi
php artisan --env
// -v|vv|vvv Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debugphp artisan --verbose php artisan changes
php artisan clear-compiled
php artisan down
php artisan dump-autoload
php artisan env
php artisan help
php artisan list
php artisan migrate
php artisan optimize
php artisan routes
php artisan serve
php artisan tinker
php artisan up
php artisan workbench php artisan asset:publish [--bench[="vendor/package"]][--path[="..."]][package]
php artisan auth:reminders-table
php artisan cache:clear
php artisan command:make name [--command[="..."]][--path[="..."]][--namespace[="..."]]
php artisan config:publish
php artisan controller:make [--bench="vendor/package"]
php artisan db:seed [--class[="..."]][--database[="..."]]
php artisan key:generate
php artisan migrate [--bench="vendor/package"][--database[="..."]][--path[="..."]][--package[="..."]][--pretend][--seed]
php artisan migrate:install [--database[="..."]]
php artisan migrate:make name [--bench="vendor/package"][--create][--package[="..."]][--path[="..."]][--table[="..."]]
php artisan migrate:refresh [--database[="..."]][--seed]
php artisan migrate:reset [--database[="..."]][--pretend]
php artisan migrate:rollback [--database[="..."]][--pretend]
php artisan queue:listen [--queue[="..."]][--delay[="..."]][--memory[="..."]][--timeout[="..."]][connection]
php artisan queue:subscribe [--type[="..."]] queue url
php artisan queue:work [--queue[="..."]][--delay[="..."]][--memory[="..."]][--sleep][connection]
php artisan session:table
php artisan view:publish [--path[="..."]]package
php artisan tail [--path[="..."]][--lines[="..."]][connection]
Composer
composer create-project laravel/laravel folder_name
composer install
composer update
composer dump-autoload [--optimize]
composer self-update
Routing
Route::get('foo',function(){});Route::get('foo','ControllerName@function');Route::controller('foo','FooController');
Triggering Errors
App::abort(404);App::missing(function($exception){});thrownewNotFoundHttpException;
Route Parameters
Route::get('foo/{bar}',function($bar){});Route::get('foo/{bar?}',function($bar ='bar'){});
HTTP Verbs
Route::any('foo',function(){});Route::post('foo',function(){});Route::put('foo',function(){});Route::patch('foo',function(){});Route::delete('foo',function(){});// RESTful actionsRoute::resource('foo','FooController');
Secure Routes
Route::get('foo', array('https',function(){}));
Route Constraints
Route::get('foo/{bar}',function($bar){})->where('bar','[0-9]+');Route::get('foo/{bar}/{baz}',function($bar, $baz){})->where(array('bar'=>'[0-9]+','baz'=>'[A-Za-z]'))
Filters
// Declare an auth filterRoute::filter('auth',function(){});// Register a class as a filterRoute::filter('foo','FooFilter');Route::get('foo', array('before'=>'auth',function(){}));// Routes in this group are guarded by the 'auth' filterRoute::get('foo', array('before'=>'auth',function(){}));Route::group(array('before'=>'auth'),function(){});// Pattern filterRoute::when('foo/*','foo');// HTTP verb patternRoute::when('foo/*','foo', array('post'));
Named Routes
Route::currentRouteName();Route::get('foo/bar', array('as'=>'foobar',function(){}));
Route Prefixing
// This route group will carry the prefix 'foo'Route::group(array('prefix'=>'foo'),function(){})
Sub-Domain Routing
// {sub} will be passed to the closureRoute::group(array('domain'=>'{sub}.example.com'),function(){});
URLs
URL::full();
URL::current();
URL::previous();
URL::to('foo/bar', $parameters, $secure);
URL::action('FooController@method', $parameters, $absolute);
URL::route('foo', $parameters, $absolute);
URL::secure('foo/bar', $parameters);
URL::asset('css/foo.css', $secure);
URL::secureAsset('css/foo.css');
URL::isValidUrl('http://example.com');
URL::getRequest();
URL::setRequest($request);
URL::getGenerator();
URL::setGenerator($generator);
Events
Event::fire('foo.bar', array($bar));Event::listen('foo.bar',function($bar){});Event::listen('foo.*',function($bar){});Event::listen('foo.bar','FooHandler',10);Event::listen('foo.bar','BarHandler',5);Event::listen('foor.bar',function($event){returnfalse;});Event::queue('foo', array($bar));Event::flusher('foo',function($bar){});Event::flush('foo');Event::forget('foo');Event::subscribe(newFooEventHandler);
Database
DB::connection('connection_name');
DB::statement('drop table users');
DB::listen(function($sql, $bindings, $time){ code_here;});
DB::transaction(function(){ transaction_code_here;});// Cache a query for $time minutesDB::table('users')->remember($time)->get();// Escape raw inputDB::raw('sql expression here');
Selects
DB::table('name')->get();
DB::table('name')->distinct()->get();
DB::table('name')->select('column as column_alias')->get();
DB::table('name')->where('name','=','John')->get();
DB::table('name')->whereBetween('column', array(1,100))->get();
DB::table('name')->whereIn('column', array(1,2,3))->get();
DB::table('name')->whereNotIn('column', array(1,2,3))->get();
DB::table('name')->whereNull('column')->get();
DB::table('name')->whereNotNull('column')->get();
DB::table('name')->groupBy('column')->get();
DB::table('name')->orderBy('column')->get();
DB::table('name')->having('count','>',100)->get();
DB::table('name')->skip(10)->take(5)->get();
DB::table('name')->first();
DB::table('name')->pluck('column');
DB::table('name')->lists('column');// JoinsDB::table('name')->join('table','name.id','=','table.id')->select('name.id','table.email');
Inserts, Updates, Deletes
DB::table('name')->insert(array('name'=>'John','email'=>'john@example.com'));
DB::table('name')->insertGetId(array('name'=>'John','email'=>'john@example.com'));// Batch insertDB::table('name')->insert(
array('name'=>'John','email'=>'john@example.com')
array('name'=>'James','email'=>'james@example.com'));// Update an entryDB::table('name')->where('name','=','John')->update(array('email'=>'john@example2.com'));// Delete everything from a tableDB::table('name')->delete();// Delete specific recordsDB::table('name')->where('id','>','10')->delete();
DB::table('name')->truncate();
Aggregates
DB::table('name')->count();
DB::table('name')->max('column');
DB::table('name')->min('column');
DB::table('name')->avg('column');
DB::table('name')->sum('column');
DB::table('name')->increment('column');
DB::table('name')->increment('column', $amount);
DB::table('name')->decrement('column');
DB::table('name')->decrement('column', $amount);
Raw Expressions
DB::select('select * from users where id = ?', array('value'));
DB::table('name')->select(DB::raw('count(*) as count, column2'))->get();
Eloquent
Model::create(array('key'=>'value'));// Fill a model with an array of attributes, beware of mass assignment!Model::fill($attributes);Model::destroy(1);Model::all();Model::find(1);// Find using dual primary keyModel::find(array('first','last'));// Throw an exception if the lookup failsModel::findOrFail(1);// Find using dual primary key and throw exception if the lookup failsModel::findOrFail(array('first','last'));Model::where('foo','=','bar')->get();Model::where('foo','=','bar')->first();// Throw an exception if the lookup failsModel::where('foo','=','bar')->firstOrFail();Model::where('foo','=','bar')->count();Model::where('foo','=','bar')->delete();Model::whereRaw('foo = bar and cars = 2', array(20))->get();Model::remember(5)->get();Model::remember(5,'cache-key-name')->get();Model::on('connection-name')->find(1);Model::with('relation')->get();Model::all()->take(10);Model::all()->skip(10);
Soft Delete
Model::withTrashed()->where('cars',2)->get();Model::withTrashed()->where('cars',2)->restore();Model::where('cars',2)->forceDelete();Model::onlyTrashed()->where('cars',2)->get();
Events
Model::creating(function($model){});Model::created(function($model){});Model::updating(function($model){});Model::updated(function($model){});Model::saving(function($model){});Model::saved(function($model){});Model::deleting(function($model){});Model::deleted(function($model){});Model::observe(newFooObserver);
Eloquent Configuration
Eloquent::unguard();// Disables mass assignment exceptions from being thrown from model inserts and updatesEloquent::reguard();// Renables any ability to throw mass assignment exceptions
The Remote Component
Executing Commands
SSH::run(array $commands);
SSH::into($remote)->run(array $commands);// specify remote, otherwise assumes default
SSH::run(array $commands,function($line){
echo $line.PHP_EOL;});
Tasks
SSH::define($taskName, array $commands);// define
SSH::task($taskName,function($line)// execute{
echo $line.PHP_EOL;});
SFTP Uploads
SSH::put($localFile, $remotePath);
SSH::putString($string, $remotePath);
Schema
Schema::create('table',function($table){
$table->increments('id');});// Specify a ConnectionSchema::connection('foo')->create('table',function($table){});Schema::rename($from, $to);Schema::drop('table');Schema::dropIfExists('table');Schema::hasTable('table');Schema::hasColumn('table','column');// Update an existing tableSchema::table('table',function($table){});
$table->renameColumn('from','to');
$table->dropColumn(string|array);
$table->engine ='InnoDB';// Only work on MySQL$table->string('name')->after('email');
Indexes
$table->string('column')->unique();
$table->primary('column');// Creates a dual primary key$table->primary(array('first','last'));
$table->unique('column');
$table->unique('column','key_name');// Creates a dual unique index$table->unique(array('first','last'));
$table->unique(array('first','last'),'key_name');
$table->index('column');
$table->index('column','key_name');// Creates a dual index$table->index(array('first','last'));
$table->index(array('first','last'),'key_name');
$table->dropPrimary('table_column_primary');
$table->dropUnique('table_column_unique');
$table->dropIndex('table_column_index');
Foreign Keys
$table->foreign('user_id')->references('id')->on('users');
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
$table->dropForeign('posts_user_id_foreign');
Column Types
$table->increments('id');
$table->bigIncrements('id');
$table->string('email');
$table->string('name',100);
$table->integer('votes');
$table->bigInteger('votes');
$table->smallInteger('votes');
$table->float('amount');
$table->double('column',15,8);
$table->decimal('amount',5,2);
$table->boolean('confirmed');
$table->date('created_at');
$table->dateTime('created_at');
$table->time('sunrise');
$table->timestamp('added_on');
$table->timestamps();
$table->softDeletes();
$table->text('description');
$table->binary('data');
$table->enum('choices', array('foo','bar'));
$table->morphs('parent');// Adds INTEGER parent_id and STRING parent_type->nullable()->default($value)->unsigned()
Input
Input::get('key');// Default if the key is missingInput::get('key','default');Input::has('key');Input::all();// Only retrieve 'foo' and 'bar' when getting inputInput::only('foo','bar');// Disregard 'foo' when getting inputInput::except('foo');
Session Input (flash)
// Flash input to the sessionInput::flash();Input::flashOnly('foo','bar');Input::flashExcept('foo','baz');Input::old('key','default_value');
Files
// Use a file that's been uploadedInput::file('filename');// Determine if a file was uploadedInput::hasFile('filename');// Access file propertiesInput::file('name')->getRealPath();Input::file('name')->getClientOriginalName();Input::file('name')->getClientOriginalExtension();Input::file('name')->getSize();Input::file('name')->getMimeType();// Move an uploaded fileInput::file('name')->move($destinationPath);// Move an uploaded fileInput::file('name')->move($destinationPath, $fileName);
Cache
Cache::put('key','value', $minutes);Cache::add('key','value', $minutes);Cache::forever('key','value');Cache::remember('key', $minutes,function(){return'value'});Cache::rememberForever('key',function(){return'value'});Cache::forget('key');Cache::has('key');Cache::get('key');Cache::get('key','default');Cache::get('key',function(){return'default';});Cache::increment('key');Cache::increment('key', $amount);Cache::decrement('key');Cache::decrement('key', $amount);Cache::section('group')->put('key', $value);Cache::section('group')->get('key');Cache::section('group')->flush();
Cookies
Cookie::get('key');// Create a cookie that lasts for everCookie::forever('key','value');// Set a cookie before a response has been createdCookie::queue('key','value','minutes');// Send a cookie with a response$response =Response::make('Hello World');
$response->withCookie(Cookie::make('name','value', $minutes));
Sessions
Session::get('key');Session::get('key','default');Session::get('key',function(){return'default';});Session::put('key','value');Session::all();Session::has('key');Session::forget('key');Session::flush();Session::regenerate();Session::flash('key','value');Session::reflash();Session::keep(array('key1','key2'));
Requests
Request::path();Request::is('foo/*');Request::url();Request::segment(1);Request::header('Content-Type');Request::server('PATH_INFO');Request::ajax();Request::secure();
Responses
returnResponse::make($contents);returnResponse::make($contents,200);returnResponse::json(array('key'=>'value'));returnResponse::json(array('key'=>'value'))->setCallback(Input::get('callback'));returnResponse::download($filepath);returnResponse::download($filepath, $filename, $headers);// Create a response and modify a header value$response =Response::make($contents,200);
$response->header('Content-Type','application/json');return $response;// Attach a cookie to a responsereturnResponse::make($content)->withCookie(Cookie::make('key','value'));
Redirects
returnRedirect::to('foo/bar');returnRedirect::to('foo/bar')->with('key','value');returnRedirect::to('foo/bar')->withInput(Input::get());returnRedirect::to('foo/bar')->withInput(Input::except('password'));returnRedirect::to('foo/bar')->withErrors($validator);returnRedirect::back();returnRedirect::route('foobar');returnRedirect::route('foobar', array('value'));returnRedirect::route('foobar', array('key'=>'value'));returnRedirect::action('FooController@index');returnRedirect::action('FooController@baz', array('value'));returnRedirect::action('FooController@baz', array('key'=>'value'));// If intended redirect is not defined, defaults to foo/bar.returnRedirect::intended('foo/bar');
IoC
App::bind('foo',function($app){returnnewFoo;});App::make('foo');// If this class exists, it's returnedApp::make('FooBar');App::singleton('foo',function(){returnnewFoo;});App::instance('foo',newFoo);App::bind('FooRepositoryInterface','BarRepository');App::register('FooServiceProvider');// Listen for object resolutionApp::resolving(function($object){});
Security
Passwords
Hash::make('secretpassword');Hash::check('secretpassword', $hashedPassword);Hash::needsRehash($hashedPassword);
Auth
// Check if the user is logged inAuth::check();Auth::user();Auth::attempt(array('email'=> $email,'password'=> $password));// 'Remember me' by passing true to Auth::attempt()Auth::attempt($credentials,true);// Log in for a single requestAuth::once($credentials);Auth::login(User::find(1));Auth::loginUsingId(1);Auth::logout();Auth::validate($credentials);Auth::basic('username');Auth::onceBasic();Password::remind($credentials,function($message, $user){});
Encryption
Crypt::encrypt('secretstring');Crypt::decrypt($encryptedString);Crypt::setMode('ctr');Crypt::setCipher($cipher);
Mail::send('email.view', $data,function($message){});Mail::send(array('html.view','text.view'), $data, $callback);Mail::queue('email.view', $data,function($message){});Mail::queueOn('queue-name','email.view', $data, $callback);Mail::later(5,'email.view', $data,function($message){});// Write all email to logs instead of sendingMail::pretend();
Messages
// These can be used on the $message instance passed into Mail::send() or Mail::queue()$message->from('email@example.com','Mr. Example');
$message->sender('email@example.com','Mr. Example');
$message->returnPath('email@example.com');
$message->to('email@example.com','Mr. Example');
$message->cc('email@example.com','Mr. Example');
$message->bcc('email@example.com','Mr. Example');
$message->replyTo('email@example.com','Mr. Example');
$message->subject('Welcome to the Jungle');
$message->priority(2);
$message->attach('foo\bar.txt', $options);// This uses in-memory data as attachments$message->attachData('bar','Data Name', $options);// Embed a file in the message and get the CID$message->embed('foo\bar.txt');
$message->embedData('foo','Data Name', $options);// Get the underlying Swift Message instance$message->getSwiftMessage();
Queues
Queue::push('SendMail', array('message'=> $message));Queue::push('SendEmail@send', array('message'=> $message));Queue::push(function($job)use $id {});
php artisan queue:listen
php artisan queue:listen connection
php artisan queue:listen --timeout=60
php artisan queue:work
Validation
Validator::make(
array('key'=>'Foo'),
array('key'=>'required|in:Foo'));Validator::extend('foo',function($attribute, $value, $params){});Validator::extend('foo','FooValidator@validate');Validator::resolver(function($translator, $data, $rules, $msgs){returnnewFooValidator($translator, $data, $rules, $msgs);});
Rules
accepted
active_url
after:YYYY-MM-DD
before:YYYY-MM-DD
alpha
alpha_dash
alpha_num
between:1,10
confirmed
date
date_format:YYYY-MM-DD
different:fieldname
exists:table,column
image
in:foo,bar,baz
not_in:foo,bar,baz
integer
numeric
ip
max:value
min:value
mimes:jpeg,png
regex:[0-9]
required
required_if:field,value
required_with:foo,bar,baz
required_without:foo,bar,baz
same:field
size:value
unique:table,column,except,idColumn
url
Views
View::make('path/to/view');View::make('foo/bar')->with('key','value');View::make('foo/bar')->withKey('value');View::make('foo/bar', array('key'=>'value'));View::exists('foo/bar');// Share a value across all viewsView::share('key','value');// Nesting viewsView::make('foo/bar')->nest('name','foo/baz', $data);// Register a view composerView::composer('viewname',function($view){});//Register multiple views to a composerView::composer(array('view1','view2'),function($view){});// Register a composer classView::composer('viewname','FooComposer');View::creator('viewname',function($view){});
Blade Templates
@extends('layout.name')// Begin a section@section('name')// End a section@stop// End a section and yield@show@parent// Show a section in a template@yield('name')@include('view.name')@include('view.name', array('key'=>'value'));@lang('messages.name')@choice('messages.name',1);@if@else@elseif@endif@unless@endunless@for@endfor@foreach@endforeach@while@endwhile// Echo content{{ $var }}// Echo escaped content{{{ $var }}}{{--BladeComment--}}// Echoing Data After Checking For Existence{{{ $name or'Default'}}}// Displaying Raw Text With Curly Braces@{{This will not be processed byBlade}}
Forms
Form::open(array('url'=>'foo/bar','method'=>'PUT'));Form::open(array('route'=>'foo.bar'));Form::open(array('route'=> array('foo.bar', $parameter)));Form::open(array('action'=>'FooController@method'));Form::open(array('action'=> array('FooController@method', $parameter)));Form::open(array('url'=>'foo/bar','files'=>true));Form::close();Form::token();Form::model($foo, array('route'=> array('foo.bar', $foo->bar)));
Form Elements
Form::label('id','Description');Form::label('id','Description', array('class'=>'foo'));Form::text('name');Form::text('name', $value);Form::text('name', $value, array('class'=>'name'));Form::textarea('name');Form::textarea('name', $value);Form::textarea('name', $value, array('class'=>'name'));Form::hidden('foo', $value);Form::password('password');Form::password('password', array('placeholder'=>'Password'));Form::email('name', $value, array());Form::file('name', array('class'=>'name'));Form::checkbox('name','value');// Generating a checkbox that is checkedForm::checkbox('name','value',true, array('class'=>'name'));Form::radio('name','value');// Generating a radio input that is selectedForm::radio('name','value',true, array('class'=>'name'));Form::select('name', array('key'=>'value'));Form::select('name', array('key'=>'value'),'key', array('class'=>'name'));Form::submit('Submit!');Form::macro('fooField',function(){return'<input type="custom"/>';});Form::fooField();
HTML Builder
HTML::macro('name',function(){});
HTML::entities($value);
HTML::decode($value);
HTML::script($url, $attributes);
HTML::style($url, $attributes);
HTML::image($url, $alt, $attributes);
HTML::link($url,'title', $attributes, $secure);
HTML::secureLink($url,'title', $attributes);
HTML::linkAsset($url,'title', $attributes, $secure);
HTML::linkSecureAsset($url,'title', $attributes);
HTML::linkRoute($name,'title', $parameters, $attributes);
HTML::linkAction($action,'title', $parameters, $attributes);
HTML::mailto($email,'title', $attributes);
HTML::email($email);
HTML::ol($list, $attributes);
HTML::ul($list, $attributes);
HTML::listing($type, $list, $attributes);
HTML::listingElement($key, $type, $value);
HTML::nestedListing($key, $type, $value);
HTML::attributes($attributes);
HTML::attributeElement($key, $value);
HTML::obfuscate($value);
Strings
// Transliterate a UTF-8 value to ASCIIStr::ascii($value)Str::camel($value)Str::contains($haystack, $needle)Str::endsWith($haystack, $needles)// Cap a string with a single instance of a given value.Str::finish($value, $cap)Str::is($pattern, $value)Str::length($value)Str::limit($value, $limit =100, $end ='...')Str::lower($value)Str::words($value, $words =100, $end ='...')Str::plural($value, $count =2)// Generate a more truly "random" alpha-numeric string.Str::random($length =16)// Generate a "random" alpha-numeric string.Str::quickRandom($length =16)Str::upper($value)Str::title($value)Str::singular($value)Str::slug($title, $separator ='-')Str::snake($value, $delimiter ='_')Str::startsWith($haystack, $needles)// Convert a value to studly caps case.Str::studly($value)Str::macro($name, $macro)
Localization
App::setLocale('en');Lang::get('messages.welcome');Lang::get('messages.welcome', array('foo'=>'Bar'));Lang::has('messages.welcome');Lang::choice('messages.apples',10);
Files
File::exists('path');File::get('path');File::getRemote('path');File::getRequire('path');File::requireOnce('path');File::put('path','contents');File::append('path','data');File::delete('path');File::move('path','target');File::copy('path','target');File::extension('path');File::type('path');File::size('path');File::lastModified('path');File::isDirectory('directory');File::isWritable('path');File::isFile('file');// Find path names matching a given pattern.File::glob($patterns, $flag);// Get an array of all files in a directory.File::files('directory');// Get all of the files from the given directory (recursive).File::allFiles('directory');// Get all of the directories within a given directory.File::directories('directory');File::makeDirectory('path', $mode =0777, $recursive =false);File::copyDirectory('directory','destination', $options =null);File::deleteDirectory('directory', $preserve =false);File::cleanDirectory('directory');
Helpers
Arrays
array_add($array,'key','value');
array_build($array,function(){});
array_divide($array);
array_dot($array);
array_except($array, array('key'));
array_fetch($array,'key');
array_first($array,function($key, $value){}, $default);// Strips keys from the arrayarray_flatten($array);
array_forget($array,'foo');// Dot notationarray_forget($array,'foo.bar');
array_get($array,'foo','default');
array_get($array,'foo.bar','default');
array_only($array, array('key'));// Return array of key => valuesarray_pluck($array,'key');// Return and remove 'key' from arrayarray_pull($array,'key');
array_set($array,'key','value');// Dot notationarray_set($array,'key.subkey','value');
array_sort($array,function(){});// First element of an arrayhead($array);// Last element of an arraylast($array);
Paths
app_path();
public_path();// App root pathbase_path();
storage_path();
Strings
camel_case($value);
class_basename($class);// Escape a stringe('<html>');
starts_with('Foo bar.','Foo');
ends_with('Foo bar.','bar.');
snake_case('fooBar');
str_contains('Hello foo bar.','foo');// Result: foo/bar/str_finish('foo/bar','/');
str_is('foo*','foobar');
str_plural('car');
str_random(25);
str_singular('cars');// Result: FooBarstudly_case('foo_bar');
trans('foo.bar');
trans_choice('foo.bar', $count);
URLs and Links
action('FooController@method', $parameters);
link_to('foo/bar', $title, $attributes, $secure);
link_to_asset('img/foo.jpg', $title, $attributes, $secure);
link_to_route('route.name', $title, $parameters, $attributes);
link_to_action('FooController@method', $title, $params, $attrs);// HTML Linkasset('img/photo.jpg', $title, $attributes);// HTTPS linksecure_asset('img/photo.jpg', $title, $attributes);
secure_url('path', $parameters);
route($route, $parameters, $absolute =true);
url('path', $parameters = array(), $secure =null);
Miscellaneous
csrf_token();
dd($value);
value(function(){return'bar';});with(newFoo)->chainedMethod();
Laravel Cheat 表 http://cheats.jesse-obrien.ca/#的更多相关文章
- 【干货】Laravel --Validate (表单验证) 使用实例
前言 : Laravel 提供了多种方法来验证应用输入数据.默认情况下,Laravel 的控制器基类使用ValidatesRequests trait,该trait提供了便利的方法通过各种功能强大的验 ...
- laravel 项目表单中有csrf_token,但一直报错419错误 解决redis连接错误:MISCONF Redis is configured to save RDB snapshots, but it is currently not able to persi
laravel 项目表单中有csrf_token,但一直报错419错误,因为项目中使用到Redis缓存,在强制关闭Redis后出现的问题,查询laravel.log文件查找相关问题 安装redis后在 ...
- Laravel Form 表单的数据校验
例如,要使用手机号加验证码的方式提供登录网站的功能,那么在处理前端提交的 form 表单时,就不得不对提交的手机号及验证码做基本的数据校验. 手写规则,非常浪费时间.使用 laravel 内置的 va ...
- laravel form 表单提交
form表单需要加token,不然会出现419错误,csrf_token不用自己生成,放进去就行,laravel自己会生成 路由: 控制器生成一个:
- laravel框架——表单验证
创建路由 Route::get('test','VerController@index'); Route::post('tosubmit','VerController@tosubmit'); 在控制 ...
- [Laravel 5] 表单验证 Form Requests and Controller Validation
本文 转载自:http://blog.hsin.tw/2015/laravel-5-note09-form-requests-and-controller-validation/ 文章解答了我的困惑非 ...
- laravel模型表建立外键约束的使用:
模型: //表->posts class Post extends Model { //关联用户: public function user(){ //belongsTo,第一个参数:外键表,第 ...
- laravel 一表關聯二表,二表關聯三表,通過一表controller拿三表數據
model 一表關聯二表 public function ordercode() { return $this->hasOne(\App\Models\OrderCode::class,'id' ...
- laravel的表单验证(下面有些信息未验证,转的)
后台写法: 1.1类的方法 $rules = [ 'email'=>'required|between:4,20', 'password'=>'required|between:6,20' ...
随机推荐
- 安装Node.js
1.window下安装Node.js 安装git,方便使用命令行. 网址:http://www.git-scm.com/download/ 下载后直接安装即可 接着安装Node.js https:// ...
- notification:object not locked by thread before notify()
今天写notification练习时,误将NotificationManager.notify(0, notification);写成notification.notify(); 代码如下 publi ...
- Android WiFiDirect 学习(二)——Service Discovery
Service Discovery 简介 在Android WifiDirect学习(一 )中,简单介绍了如何使用WifiDirect进行搜索——连接——传输. 这样会有一个问题,那就是你会搜索到到附 ...
- iOS分享 - AFNetworking之多图片/文件上传
在分享经验之前,先说点题外话,之前的一个项目涉及到了多图片的上传,本来以为是一个很简单的事情,却着实困扰了我好久,究其原因,一是我不够细心,二是与后台人员的交流不够充分.在此,我想将我的老师常说的一句 ...
- MVC---404页面配置
参考地址1:http://benfoster.io/blog/aspnet-mvc-custom-error-pages 参考地址2:https://msdn.microsoft.com/en-us/ ...
- 清北学堂 Pa
PA[题目描述]汉诺塔升级了:现在我们有?个圆盘和?个柱子,每个圆盘大小都不一样,大的圆盘不能放在小的圆盘上面,?个柱子从左到右排成一排.每次你可以将一个柱子上的最上面的圆盘移动到右边或者左边的柱子上 ...
- POJ3662 Telephone Lines( dijkstral + 二分 )
POJ3662 Telephone Lines 题目大意:要在顶点1到顶点n之间建一条路径,假设这条路径有m条边,其中有k条边是免费的,剩余m-k条边是要收费的, 求这m-k条边中花费最大的一条边的最 ...
- Go语言之defer
defer语句被用于预定对一个函数的调用.我们把这类被defer语句调用的函数称为延迟函数.注意,defer语句只能出现在函数或方法的内部. 一条defer语句总是以关键字defer开始.在defer ...
- web标准(复习)--3 二列和三列布局
今天学习二列和三列布局,将涉及到以下内容和知识点 二列自适应宽度 二列固定宽度 二列固定宽度居中 xhtml的块级元素(div)和内联元素(span) float属性 三列自适应宽度 三列固定宽度 三 ...
- Python字符串处理NoneType的处理
Python合并处理字符串的四种方法在这里都有介绍: http://www.cnblogs.com/heshizhu/archive/2012/01/11/2319892.html 无论使用最简单的+ ...