Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Introduction to Laravel framework (1) (@Malang ...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
DOT Indonesia
January 26, 2018
0
120
Introduction to Laravel framework (1) (@Malang PHP User Group Meetup - October 2017)
DOT Indonesia
January 26, 2018
Tweet
Share
More Decks by DOT Indonesia
See All by DOT Indonesia
Agile Testing To Support Short Cycle Development (@DOT TechTalk, 18 Januari 2019)
dotindonesia
0
110
How to be Agile (@DOT TechTalk, 11 Januari 2019)
dotindonesia
1
49
Build an Awesome CI/CD with Jenkins - Samsul (@PHP User Group Meetup, 17 September 2018)
dotindonesia
0
130
Mockup API to IMPROVE Team Collaboration - Toni (@DOT TechTalk, 10 Agustus 2018)
dotindonesia
0
82
Investment & Financing - Arya (@DOT TechTalk, 20 April 2018)
dotindonesia
3
69
Introduction to Docker Container - Samsul Ma'arif (@DILO Malang - 12 March 2018)
dotindonesia
0
170
Company Overview - DOT Indonesia (@Study Excursie UNIDA Gontor - March 2018)
dotindonesia
0
130
How to be a Great Mobile Developer - Agus (@Study Excursie UNIDA Gontor - March 2018)
dotindonesia
0
57
Rapid mobile development with React Native - Fahmi (@Study Excursie UNIDA Gontor - March 2018)
dotindonesia
0
47
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
260
エンジニアに許された特別な時間の終わり
watany
106
230k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
85
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
The untapped power of vector embeddings
frankvandijk
1
1.6k
Code Reviewing Like a Champion
maltzj
527
40k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
340
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
460
Visualization
eitanlees
150
17k
Building AI with AI
inesmontani
PRO
1
710
Building Adaptive Systems
keathley
44
2.9k
Transcript
Introduction to Laravel framework “Love beautiful code? We do too.”
At Malang PHP User Group Meetup - October 2017
About Speaker Ahmad Fatoni [
[email protected]
] Web Developer at DOT Indonesia
(PT Distinction On Technology Indonesia)
Laravel (2011 ) V5.5 (2017 ) Taylor Otwell Laravel Horizon
| Laravel Dusk | Laravel Echo | Valet | Lumen | and more….
Today Topic Architecture Routing Controller Model Views Migration Query Builder
Eloquent Composer support
Architecture
Architecture
Routing Default route files : routes/web.php and routes/api.php Available method
: GET, POST, PUT, PATCH, DELETE, OPTIONS CSRF protection Using parameter(s) : Route::get('users/{id}', ['uses' => 'UserController@show]); Named route : Route::get('users/{id}', ['uses' =>UserController@show])->name(‘show’); Grouping
Controller Default folder : app/Http/Controllers Connecting model and view (see
the architecture) ‘Request’ handler : Illuminate\Http\Request ◦ all() ◦ only() ◦ except() ◦ json() ◦ And more (https://laravel.com/api/5.5/Illuminate/Http/Request.html)
Controller
Controller Return view response : return view('auth.login'); Compacting data to
view $data['member'] = [ 'fatoni', 'kennan' ]; return view('member.index', compact('data')); Redirect to route : return redirect()->route('member.index');
Model Default folder : app Connecting app with database Awesome
Eloquent
Model
Views Default folder : resources/views Blade templating (https://laravel.com/docs/5.5/blade)
Views Easy to organizing
Views Easy to organizing
Migrations Default folder : database/migrations Build database from application Easily
modify and share database schema Creating foreign key (relationship)
Migrations CreateRolesTable CreatePermissionRoleTable
Migrations
Query Builder Get Data Query Builder : ◦ $users =
DB::table('users')->get(); SQL Query ◦ $sql = "SELECT * FROM users”; Insert Data Query Builder : ◦ $result = DB::table('users')->insert([‘colum1’ => ‘values1’, ‘column2’ => ‘values2’]); ◦ $result = DB::table(users’)->insert($request->all()); SQL Query ◦ INSERT INTO users (column1, column2.) VALUES (value1, value2)
Query Builder Update Data Query Builder : ◦ $result =
DB::table('users')->where(‘id’, ‘=’, 1)->update([‘colum1’ => ‘values1’, ‘column2’ => ‘values2’]); ◦ $result = DB::table(users’)->where(‘id’, ‘=’, 1)->insert($request->all()); SQL Query ◦ UPDATE users SET column1=value, column2=value2 WHERE id=1
Eloquent Awesome collections ( all(), create(), update(), etc ) Accessors
& Mutators Easy managing and working with relationships Serializations
Eloquent Awesome collections ( all(), create(), update(), etc )
Eloquent Accessors & Mutators Accessor Mutator
Eloquent Easy managing and working with relationships ◦ One To
One ◦ One To Many ◦ Many To Many ◦ Has Many Through ◦ Polymorphic Relations ◦ Many To Many Polymorphic Relations
Eloquent Easy managing and working with relationships ◦ One To
One Call it : $phone = User::find(1)->phone;
Eloquent Serializations ◦ Serializing To Arrays ◦ Serializing To JSON
Composer support
None