原文地址:http://cheats.jesse-obrien.ca/

Artisan

// Displays help for a given command
php artisan --help OR -h
// Do not output any message
php artisan --quiet OR -q
// Display this application version
php artisan --version OR -V
// Do not ask any interactive question
php artisan --no-interaction OR -n
// Force ANSI output
php artisan --ansi
// Disable ANSI output
php artisan --no-ansi
// The environment the command should run under
php artisan --env
// -v|vv|vvv Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
php artisan --verbose // Display the framework change list
php artisan changes
// Remove the compiled class file
php artisan clear-compiled
// Put the application into maintenance mode
php artisan down
// Regenerate framework autoload files
php artisan dump-autoload
// Display the current framework environment
php artisan env
// Displays help for a command
php artisan help
// Lists commands
php artisan list // Optimize the framework for better performance
php artisan optimize
// List all registered routes
php artisan routes
// Serve the application on the PHP development server
php artisan serve
// Change the default port
php artisan serve --port 8080// Get it to work outside localhost
php artisan serve --host 0.0.0.0// Interact with your application
php artisan tinker
// Bring the application out of maintenance mode
php artisan up
// Create a new package workbench
php artisan workbench // Publish a package's assets to the public directory
php artisan asset:publish [--bench[="vendor/package"]][--path[="..."]][package]// Create a migration for the password reminders table
php artisan auth:reminders-table
// Flush the application cache
php artisan cache:clear
// Create a new Artisan command (L3:task)
php artisan command:make name [--command[="..."]][--path[="..."]][--namespace[="..."]]// Publish a package's configuration to the application
php artisan config:publish
// Create a new resourceful controller
php artisan controller:make [--bench="vendor/package"]// Seed the database with records
php artisan db:seed [--class[="..."]][--database[="..."]]// Set the application key
php artisan key:generate // Database migrations
php artisan migrate [--bench="vendor/package"][--database[="..."]][--path[="..."]][--package[="..."]][--pretend][--seed]// Create the migration repository
php artisan migrate:install [--database[="..."]]// Create a new migration file
php artisan migrate:make name [--bench="vendor/package"][--create][--package[="..."]][--path[="..."]][--table[="..."]]// Reset and re-run all migrations
php artisan migrate:refresh [--database[="..."]][--seed]// Rollback all database migrations
php artisan migrate:reset [--database[="..."]][--pretend]// Rollback the last database migration
php artisan migrate:rollback [--database[="..."]][--pretend]// Publish a package's migrations to migration directory
php artisan migrate:publish vendor/package// Listen to a given queue
php artisan queue:listen [--queue[="..."]][--delay[="..."]][--memory[="..."]][--timeout[="..."]][connection]// Subscribe a URL to an Iron.io push queue
php artisan queue:subscribe [--type[="..."]] queue url
// Process the next job on a queue
php artisan queue:work [--queue[="..."]][--delay[="..."]][--memory[="..."]][--sleep][connection]// Create a migration for the session database table php artisan session:table
// Publish a package's views to the application
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

Configuration

Config::get('app.timezone');//get with Default valueConfig::get('app.timezone','UTC');//set ConfigurationConfig::set('database.default','sqlite');

Routing

Route::get('foo',function(){});Route::get('foo','ControllerName@function');Route::controller('foo','FooController');
RESTful Controllers
Route::resource('posts','PostsController');//Specify a subset of actions to handle on the routeRoute::resource('photo','PhotoController',['only'=>['index','show']]);Route::resource('photo','PhotoController',['except'=>['update','destroy']]);
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]'))
// Set a pattern to be used across routesRoute::pattern('bar','[0-9]+')
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(){})
Route Namespacing
// This route group will carry the namespace 'Foo\Bar'Route::group(array('namespace'=>'Foo\Bar'),function(){})
Sub-Domain Routing
// {sub} will be passed to the closureRoute::group(array('domain'=>'{sub}.example.com'),function(){});

App

App::environment();// test equal toApp::environment('local');App::runningInConsole();App::runningUnitTests();

Log

Log::info('info');Log::info('info',array('context'=>'additional info'));Log::error('error');Log::warning('warning');// get monolog instanceLog::getMonolog();// add listenerLog::listen(function($level, $message, $context){});// get all ran queries.
DB::getQueryLog();

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 minutes
DB::table('users')->remember($time)->get();// Escape raw input
DB::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();// Default Eloquent sort is ascendant
DB::table('name')->orderBy('column')->get();
DB::table('name')->orderBy('column','desc')->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');// Joins
DB::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 insert
DB::table('name')->insert(array(
array('name'=>'John','email'=>'john@example.com'),
array('name'=>'James','email'=>'james@example.com')));// Update an entry
DB::table('name')->where('name','=','John')->update(array('email'=>'john@example2.com'));// Delete everything from a table
DB::table('name')->delete();// Delete specific records
DB::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);
DB::table('name')->remember(5)->get();
DB::table('name')->remember(5,'cache-key-name')->get();
DB::table('name')->cacheTags('my-key')->remember(5)->get();
DB::table('name')->cacheTags(array('my-first-key','my-second-key'))->remember(5)->get();
Raw Expressions
// return rows
DB::select('select * from users where id = ?', array('value'));// return nr affected rows
DB::insert('insert into foo set bar=2');
DB::update('update foo set bar=2');
DB::delete('delete from bar');// returns void
DB::statement('update foo set bar=2');// raw expression inside a statement
DB::table('name')->select(DB::raw('count(*) as count, column2'))->get();

Eloquent

Model::create(array('key'=>'value'));// Find first matching record by attributes or createModel::firstOrCreate(array('key'=>'value'));// Find first record by attributes or instantiateModel::firstOrNew(array('key'=>'value'));// Create or update a record matching attibutes, and fill with valuesModel::updateOrCreate(array('search_key'=>'search_value'), 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();// dynamicModel::whereFoo('bar')->first();// Throw an exception if the lookup failsModel::where('foo','=','bar')->firstOrFail();Model::where('foo','=','bar')->count();Model::where('foo','=','bar')->delete();//Output raw queryModel::where('foo','=','bar')->toSql();Model::whereRaw('foo = bar and cars = 2', array(20))->get();Model::remember(5)->get();Model::remember(5,'cache-key-name')->get();Model::cacheTags('my-tag')->remember(5)->get();Model::cacheTags(array('my-first-key','my-second-key'))->remember(5)->get();Model::on('connection-name')->find(1);Model::with('relation')->get();Model::all()->take(10);Model::all()->skip(10);// Default Eloquent sort is ascendantModel::all()->orderBy('column');Model::all()->orderBy('column','desc');
Soft Delete
Model::withTrashed()->where('cars',2)->get();// Include the soft deleted models in the resultsModel::withTrashed()->where('cars',2)->restore();Model::where('cars',2)->forceDelete();// Force the result set to only included soft deletesModel::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
// Disables mass assignment exceptions from being thrown from model inserts and updatesEloquent::unguard();// Renables any ability to throw mass assignment exceptionsEloquent::reguard();

Pagination

// Auto-Magic PaginationModel::paginate(15);Model::where('cars',2)->paginate(15);// "Next" and "Previous" onlyModel::where('cars',2)->simplePaginate(15);// Manual PaginatorPaginator::make($items, $totalItems, $perPage);// Print page navigators in view
$variable->links();

Schema

// Indicate that the table needs to be createdSchema::create('table',function($table){
$table->increments('id');});// Specify a ConnectionSchema::connection('foo')->create('table',function($table){});// Rename the table to a given nameSchema::rename($from, $to);// Indicate that the table should be droppedSchema::drop('table');// Indicate that the table should be dropped if it existsSchema::dropIfExists('table');// Determine if the given table existsSchema::hasTable('table');// Determine if the given table has a given columnSchema::hasColumn('table','column');// Update an existing tableSchema::table('table',function($table){});// Indicate that the given columns should be renamed
$table->renameColumn('from','to');// Indicate that the given columns should be dropped
$table->dropColumn(string|array);// The storage engine that should be used for the table
$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'|'restrict'|'set null'|'no action');
$table->foreign('user_id')->references('id')->on('users')->onUpdate('cascade'|'restrict'|'set null'|'no action');
$table->dropForeign('posts_user_id_foreign');
Column Types
// Increments
$table->increments('id');
$table->bigIncrements('id');// Numbers
$table->integer('votes');
$table->tinyInteger('votes');
$table->smallInteger('votes');
$table->mediumInteger('votes');
$table->bigInteger('votes');
$table->float('amount');
$table->double('column',15,8);
$table->decimal('amount',5,2);//String and Text
$table->char('name',4);
$table->string('email');
$table->string('name',100);
$table->text('description');
$table->mediumText('description');
$table->longText('description');//Date and Time
$table->date('created_at');
$table->dateTime('created_at');
$table->time('sunrise');
$table->timestamp('added_on');
$table->timestamps();// Adds created_at and updated_at columns
$table->nullableTimestamps();// Others
$table->binary('data');
$table->boolean('confirmed');
$table->softDeletes();// Adds deleted_at column for soft deletes
$table->enum('choices', array('foo','bar'));
$table->rememberToken();// Adds remember_token as VARCHAR(100) NULL
$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');Input::flush();
Session Input (flash)
// Flash input to the sessionInput::flash();// Flash only some of the input to the sessionInput::flashOnly('foo','bar');// Flash only some of the input to the sessionInput::flashExcept('foo','baz');// Retrieve an old input itemInput::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::tags('my-tag')->put('key','value', $minutes);Cache::tags('my-tag')->has('key');Cache::tags('my-tag')->get('key');Cache::tags('my-tag')->forget('key');Cache::tags('my-tag')->flush();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');Cookie::get('key','default');// Create a cookie that lasts for everCookie::forever('key','value');// Create a cookie that lasts N minutesCookie::make('key','value','minutes');// Set a cookie before a response has been createdCookie::queue('key','value','minutes');// Forget cookieCookie::forget('key');// Send a cookie with a response
$response =Response::make('Hello World');// Add a cookie to the response
$response->withCookie(Cookie::make('name','value', $minutes));

Sessions

Session::get('key');// Returns an item from the sessionSession::get('key','default');Session::get('key',function(){return'default';});// Get the session IDSession::getId();// Put a key / value pair in the sessionSession::put('key','value');// Push a value into an array in the sessionSession::push('foo.bar','value');// Returns all items from the sessionSession::all();// Checks if an item is definedSession::has('key');// Remove an item from the sessionSession::forget('key');// Remove all of the items from the sessionSession::flush();// Generate a new session identifierSession::regenerate();// Flash a key / value pair to the sessionSession::flash('key','value');// Reflash all of the session flash dataSession::reflash();// Reflash a subset of the current flash dataSession::keep(array('key1','key2'));

Requests

// url: http://xx.com/aa/bbRequest::url();// path: /aa/bbRequest::path();// getRequestUri: /aa/bb/?c=dRequest::getRequestUri();// Returns user's IPRequest::getClientIp();// getUri: http://xx.com/aa/bb/?c=dRequest::getUri();// getQueryString: c=dRequest::getQueryString();// Get the port scheme of the request (e.g., 80, 443, etc.)Request::getPort();// Determine if the current request URI matches a patternRequest::is('foo/*');// Get a segment from the URI (1 based index)Request::segment(1);// Retrieve a header from the requestRequest::header('Content-Type');// Retrieve a server variable from the requestRequest::server('PATH_INFO');// Determine if the request is the result of an AJAX callRequest::ajax();// Determine if the request is over HTTPSRequest::secure();// Get the request methodRequest::method();// Checks if the request method is of specified typeRequest::isMethod('post');// Get raw POST dataRequest::instance()->getContent();// Get requested response formatRequest::format();// true if HTTP Content-Type header contains */jsonRequest::isJson();// true if HTTP Accept header is application/jsonRequest::wantsJson();

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);// Create a new redirect response to the previous locationreturnRedirect::back();// Create a new redirect response to a named routereturnRedirect::route('foobar');returnRedirect::route('foobar', array('value'));returnRedirect::route('foobar', array('key'=>'value'));// Create a new redirect response to a controller actionreturnRedirect::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');// Register a shared binding in the containerApp::singleton('foo',function(){returnnewFoo;});// Register an existing instance as shared in the containerApp::instance('foo',newFoo);// Register a binding with the containerApp::bind('FooRepositoryInterface','BarRepository');// Register a service provider with the applicationApp::register('FooServiceProvider');// Listen for object resolutionApp::resolving(function($object){});

Security

Passwords
Hash::make('secretpassword');Hash::check('secretpassword', $hashedPassword);Hash::needsRehash($hashedPassword);
Auth
// Determine if the current user is authenticatedAuth::check();// Get the currently authenticated userAuth::user();// Get the ID of the currently authenticated userAuth::id();// Attempt to authenticate a user using the given credentialsAuth::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);// Log a user into the applicationAuth::login(User::find(1));// Log the given user ID into the applicationAuth::loginUsingId(1);// Log the user out of the applicationAuth::logout();// Validate a user's credentialsAuth::validate($credentials);// Attempt to authenticate using HTTP Basic AuthAuth::basic('username');// Perform a stateless HTTP Basic login attemptAuth::onceBasic();// Send a password reminder to a userPassword::remind($credentials,function($message, $user){});
Encryption
Crypt::encrypt('secretstring');Crypt::decrypt($encryptedString);Crypt::setMode('ctr');Crypt::setCipher($cipher);

Mail

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 {});// Same payload to multiple workersQueue::bulk(array('SendEmail','NotifyUser'), $payload);// Starting the queue listener
php artisan queue:listen
php artisan queue:listen connection
php artisan queue:listen --timeout=60// Process only the first job on the queue
php artisan queue:work
// Start a queue worker in daemon mode
php artisan queue:work --daemon
// Create migration file for failed jobs
php artisan queue:failed-table
// Listing failed jobs
php artisan queue:failed
// Delete failed job by id
php artisan queue:forget 5// Delete all failed jobs
php artisan queue:flush

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
array
between:1,10
confirmed
date
date_format:YYYY-MM-DD
different:fieldname
digits:value
digits_between:min,max
boolean
email
exists:table,column
image
in:foo,bar,...
not_in:foo,bar,...
integer
numeric
ip
max:value
min:value
mimes:jpeg,png
regex:[0-9]
required
required_if:field,value
required_with:foo,bar,...
required_with_all:foo,bar,...
required_without:foo,bar,...
required_without_all:foo,bar,...
sometimes|required|field
same:field
size:value
timezone
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//forelse 4.2 feature@forelse($users as $user)@empty@endforelse// 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::selectRange('range',1,10);Form::selectYear('year',2011,2015);Form::selectMonth('month');Form::submit('Submit!', array('class'=>'name'));Form::button('name', array('class'=>'name'));Form::macro('fooField',function(){return'<input type="custom"/>';});Form::fooField();

HTML Builder

HTML::macro('name',function(){});// Convert an HTML string to entities
HTML::entities($value);// Convert entities to HTML characters
HTML::decode($value);// Generate a link to a JavaScript file
HTML::script($url, $attributes);// Generate a link to a CSS file
HTML::style($url, $attributes);// Generate an HTML image element
HTML::image($url, $alt, $attributes);// Generate a HTML link
HTML::link($url,'title', $attributes, $secure);// Generate a HTTPS HTML link
HTML::secureLink($url,'title', $attributes);// Generate a HTML link to an asset
HTML::linkAsset($url,'title', $attributes, $secure);// Generate a HTTPS HTML link to an asset
HTML::linkSecureAsset($url,'title', $attributes);// Generate a HTML link to a named route
HTML::linkRoute($name,'title', $parameters, $attributes);// Generate a HTML link to a controller action
HTML::linkAction($action,'title', $parameters, $attributes);// Generate a HTML link to an email address
HTML::mailto($email,'title', $attributes);// Obfuscate an e-mail address to prevent spam-bots from sniffing it
HTML::email($email);// Generate an ordered list of items
HTML::ol($list, $attributes);// Generate an un-ordered list of items
HTML::ul($list, $attributes);// Create a listing HTML element
HTML::listing($type, $list, $attributes);// Create the HTML for a listing element
HTML::listingElement($key, $type, $value);// Create the HTML for a nested listing attribute
HTML::nestedListing($key, $type, $value);// Build an HTML attribute string from an array
HTML::attributes($attributes);// Build a single attribute element
HTML::attributeElement($key, $value);// Obfuscate a string to prevent spam-bots from sniffing it
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);// Lang::get alias
trans('messages.welcome');

Files

File::exists('path');File::get('path');File::getRemote('path');// Get a file's contents by requiring itFile::getRequire('path');// Require the given file onceFile::requireOnce('path');// Write the contents of a fileFile::put('path','contents');// Append to a fileFile::append('path','data');// Delete the file at a given pathFile::delete('path');// Move a file to a new locationFile::move('path','target');// Copy a file to a new locationFile::copy('path','target');// Extract the file extension from a file pathFile::extension('path');// Get the file type of a given fileFile::type('path');// Get the file size of a given fileFile::size('path');// Get the file's last modification timeFile::lastModified('path');// Determine if the given path is a directoryFile::isDirectory('directory');// Determine if the given path is writableFile::isWritable('path');// Determine if the given path is a fileFile::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');// Create a directoryFile::makeDirectory('path',  $mode =0777, $recursive =false);// Copy a directory from one location to anotherFile::copyDirectory('directory','destination', $options =null);// Recursively delete a directoryFile::deleteDirectory('directory', $preserve =false);// Empty the specified directory of all files and foldersFile::cleanDirectory('directory');

Helpers

Arrays
array_add($array,'key','value');// Build a new array using a callback
array_build($array,function(){});// Divide an array into two arrays. One with keys and the other with values
array_divide($array);// Flatten a multi-dimensional associative array with dots
array_dot($array);// Get all of the given array except for a specified array of items
array_except($array, array('key'));// Fetch a flattened array of a nested array element
array_fetch($array,'key');// Return the first element in an array passing a given truth test
array_first($array,function($key, $value){}, $default);// Strips keys from the array
array_flatten($array);// Remove one or many array items from a given array using "dot" notation
array_forget($array,'foo');// Dot notation
array_forget($array,'foo.bar');// Get an item from an array using "dot" notation
array_get($array,'foo','default');
array_get($array,'foo.bar','default');// Get a subset of the items from the given array
array_only($array, array('key'));// Return array of key => values
array_pluck($array,'key');// Return and remove 'key' from array
array_pull($array,'key');// Set an array item to a given value using "dot" notation
array_set($array,'key','value');// Dot notation
array_set($array,'key.subkey','value');
array_sort($array,function(){});// First element of an array
head($array);// Last element of an arraylast($array);
Paths
app_path();//  Get the path to the public folder
public_path();// App root path
base_path();// Get the path to the storage folder
storage_path();
Strings
// Convert a value to camel case
camel_case($value);// Get the class "basename" of the given object / class
class_basename($class);// Escape a string
e('<html>');// Determine if a given string starts with a given substring
starts_with('Foo bar.','Foo');// Determine if a given string ends with a given substring
ends_with('Foo bar.','bar.');// Convert a string to snake case
snake_case('fooBar');// Determine if a given string contains a given substring
str_contains('Hello foo bar.','foo');// Result: foo/bar/
str_finish('foo/bar','/');
str_is('foo*','foobar');
str_plural('car');
str_random(25);
str_limit($value, $limit =100, $end ='...')
str_singular('cars');// Result: FooBar
studly_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 Link
asset('img/photo.jpg', $title, $attributes);// HTTPS link
secure_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();

Unit testing

Install and run
// add to composer and update:"phpunit/phpunit":"4.0.*"// run tests (from project root)./vendor/bin/phpunit
                
Asserts
$this->assertTrue(true);
$this->assertEquals('foo', $bar);
$this->assertCount(1,$times);
$this->assertResponseOk();
$this->assertResponseStatus(403);
$this->assertRedirectedTo('foo');
$this->assertRedirectedToRoute('route.name');
$this->assertRedirectedToAction('Controller@method');
$this->assertViewHas('name');
$this->assertViewHas('age', $value);
$this->assertSessionHasErrors();// Asserting the session has errors for a given key...
$this->assertSessionHasErrors('name');// Asserting the session has errors for several keys...
$this->assertSessionHasErrors(array('name','age'));
$this->assertHasOldInput();
Calling routes
$response = $this->call($method, $uri, $parameters, $files, $server, $content);
$response = $this->callSecure('GET','foo/bar');
$this->session(['foo'=>'bar']);
$this->flushSession();
$this->seed();
$this->seed($connection);

SSH

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);
Filesystem/Cloud Storage
Storage::disk('s3');Storage::disk('local')->put('file.txt','Contents');Storage::disk('local')->get('file.jpg');Storage::disk('s3')->exists('file.jpg');Storage::get('file.jpg');Storage::put('file.jpg', $contents);Storage::size('file1.jpg');Storage::lastModified('file1.jpg');Storage::copy('old/file1.jpg','new/file1.jpg');Storage::move('old/file1.jpg','new/file1.jpg');Storage::prepend('file.log','Prepended Text');Storage::append('file.log','Appended Text');Storage::delete(['file1.jpg','file2.jpg']);Storage::files($directory);Storage::allFiles($directory);Storage::directories($directory);Storage::allDirectories($directory);Storage::makeDirectory($directory);Storage::deleteDirectory($directory);

laravel小抄的更多相关文章

  1. 一个cheat命令 == Linux命令小抄大全

    本文介绍一个Linux超级命令,有了这个命令,你就可以开开心心的使用linux上的各种命令了.当你要执行一个linux命令,在这个命令参数选项众多时,你一般怎么做?对,我们大多数人都会去求助man命令 ...

  2. Windows平台Atom编辑器的常用快捷键小抄Cheat Sheet

    博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:Windows平台Atom编辑器的常用快捷键小抄Cheat Sheet.

  3. cheat sheet (小抄的意思-考试的时候,带在路上原先抄的重要的知识点)

    Cheat Sheet,这里面有个Cheat(欺骗),想当然的话,意思肯定不好.事实上,这Cheat Sheet 的原意的确也就是“小抄”的意思.所以,字典的定义是:“A piece of paper ...

  4. 小抄:选择 Unity 的对象生命周期管理员

    Unity 框架提供了数种生命周期管理员,各有相同和相异之处.刚开始接触时,难免头昏. 制作这张小抄,只是为了要帮助自己理解和记忆.如果你也用 Untiy,或可参考看看. 文字說明: Transien ...

  5. JavaScript设计模式小抄集(持续更新)

    前言 本文旨在记录JavaScript中常用的设计模式代码片段,简要说明使用场景,不过于追究细节.在设计模式开篇之前,还是先要搞清楚JavaScript中关于面向对象的基础知识,可以先看看JavaSc ...

  6. 笔试算法稳了,GitHub 50k Star《labuladong的算法小抄》

    秋招算法有救了!!! 前不久在 GitHub 出现了一个手把手带你刷 LeetCode 的项目:fucking-algorithm. 该项目此前在 GitHub 开源后,连续多次霸榜 GitHub T ...

  7. Github优质库分享-01算法小抄 基于LeetCode

    Github 优质库分享-01 算法小抄 该库总共 60 多篇原创文章,都是基于 LeetCode 的题目,涵盖了所有题型和技巧,而且一定要做到举一反三,通俗易懂,绝不是简单的代码堆砌. 目前 sta ...

  8. 程序员小抄——GitHub 热点速览 Vol.44

    作者:HelloGitHub-小鱼干 这周热点是什么?youtube-dl!就是那个超过 72+ star,又因为版权问题被 GitHub 关闭的项目,GitHub Trending 上一篇" ...

  9. 抓包一张tcpdump小抄就够了

    作者简介 李先生(Lemon),高级运维工程师(自称),SRE专家(目标),梦想在35岁买一辆保时捷.喜欢钻研底层技术,认为底层基础才是王道.一切新技术都离不开操作系统(CPU.内存.磁盘).网络等. ...

随机推荐

  1. javascript实现数据结构:线性表--线性链表(链式存储结构)

    上一节中, 线性表的顺序存储结构的特点是逻辑关系上相邻的两个元素在物理位置上也相邻,因此可以随机存取表中任一元素,它的存储位置可用一个简单,直观的公式来表示.然后,另一方面来看,这个特点也造成这种存储 ...

  2. MariaDB Galera Cluster集群

    一.MariaDB Galera Cluster概要: 1.简述: MariaDB Galera Cluster 是一套在mysql innodb存储引擎上面实现multi-master及数据实时同步 ...

  3. POJ 3978 Primes(素数筛选法)

    题目 简单的计算A,B之间有多少个素数 只是测试数据有是负的 //AC //A和B之间有多少个素数 //数据可能有负的!!! #include<string.h> #include< ...

  4. POJ 2823

    Sliding Window Time Limit: 12000MS   Memory Limit: 65536K Total Submissions: 35941   Accepted: 10636 ...

  5. hdu 3590 PP and QQ

    知识储备: Anti-SG 游戏和 SJ 定理  [定义](anti-nim 游戏)  桌子上有 N 堆石子,游戏者轮流取石子.  每次只能从一堆中取出任意数目的石子,但不能不取.  取走最后一 ...

  6. iOS Architecture

    目前ios的指令集有以下几种: armv6 iPhone iPhone2 iPhone3G 第一代和第二代iPod Touch armv7 iPhone4 iPhone4S armv7s iPhone ...

  7. CodeForces485B——Valuable Resources(水题)

    Valuable Resources Many computer strategy games require building cities, recruiting army, conquering ...

  8. SQL Server ->> Msg 7411, Level 16, State 1, Line 1 -- Server 'XXXX' is not configured for RPC.

    关于问题,有两个相关的服务器选项. exec sp_serveroption @server='CIA-SH-SVR-SIS', @optname='rpc', @optvalue='true' ex ...

  9. Hadoop、Pig、Hive、Storm、NOSQL 学习资源收集

    (一)hadoop 相关安装部署 1.hadoop在windows cygwin下的部署: http://lib.open-open.com/view/1333428291655 http://blo ...

  10. javascript 递归调用

    上源码:underscore.js var flatten = function(input, shallow, output) { if (shallow && _.every(in ...