PHP 攻略:Laravel 5.8 從入門到實務
關於課程
課程包含
課程時長
課程總人數
觀看限制
學習升級
最新消息
課程內容
我有辦法獨立做出一個「電子商務網站」嗎?
你或許曾經想要做一個電子商務網站,透過網路來做生意,但卻沒有團隊能一起開發,也沒有太多的預算可以找人外包,只能靠自己完成網頁前台和系統管理後台。
但前台網頁設計並不簡單,而隨著 RWD 前台設計的風行,網頁版面設計需要同時考量電腦與手機裝置的呈現,更拉高了前台開發的工作複雜度,除了需要專精 HTML 標籤和網頁設計軟體,還需要掌握更多的 CSS 樣式知識才能勝任。
就算搞定了網頁版型,系統後台也是令人頭痛的問題。電子商務網站有各式資料、表單要管理與整理,而為了更多元的角色權限,不只需要註冊與登入功能,還需要更彈性的權限設定功能;假如想進一步讓網站能夠面向全球客戶,則又需要支援多種語系。
想想網站前台後台包含了這麼多的工作量,覺得好像自己一個人無法獨立完成?
透過框架、套版以及共享函式庫的協助,你也能獨立完成網頁前台與系統後台
但是 Bootstrap 的誕生,把前台設計變簡單了。
有了它,只要設定 Bootstrap 內建的 CSS 類別,一個漂亮的版型就出來了,還支援手機版。就算沒有太多的設計概念,還能夠透過套版來製作出有設計感的網頁來。
而好用的框架,也能讓你快速開發完成系統後台,甚至只需要進行一些參數設定,系統功能就完成了,就像是魔法一樣。
所以,透過掌握框架的力量,並學習使用套版,您絕對能夠獨立把心中的電子商務網站做出來。
利用框架打造程式車,引擎輪胎中控皆備,只需規劃座位空間和塗漆,好車立刻上場
回到現實生活中,您肯定也是希望像鋼鐵人一樣,當敵人進犯能夠有多種方式,輕鬆克敵,而不是一雙鐵拳打到通。
既然如此,寫程式又何必全部靠自己設計?套句暗黑破壞神三的名言就是,「痛苦太多,收穫太少」。
框架針對常用的需求訂出彈性且穩固的解法,規定統一的寫法,包含目錄和檔案,讓大家寫法都一致,容易接手前人的程式與交接,大幅降低學習和維護成本。
透過框架來造一輛程式車,引擎輪胎中控皆備,你只需要規劃座位空間和塗漆,好車立刻上場。當程式設計師們都在叫零件,您可別自己造輪子!
電商必學!運用框架,一步步打造你的第一個電子商務網站
假如你想學習 Laravel 框架,但是沒有太多的程式開發經驗,別擔心,這個課程就是專為沒有程式經驗的您聽得懂而設計,在基礎知識篇會介紹基礎語法和進階技巧,內容會包含到所有在撰寫 Laravel 應用時需要了解的知識,絕對不讓您落單。
此外,課程將搭配專題實戰作業,跟著課程單元走,你也能一步步打造自己的第一個電子商務網站!
框架那麼多,為什麼要學 Laravel?
大量使用者協助開發,套件豐富、技術文件完整,大幅提升你的開發速度
因為框架的強大與否,與使用這個框架的人口數,決定了開發的速度,所以有越來越多爭分奪秒的新創企業改用 Laravel,如募資平台 FlyingV 及國際新銳電商 Bloomon 等。
而因為有大量支持者在協助開發套件,網路上的技術文件非常完整,學習者能站在眾人的肩膀上快速開發,節省近 70% 的工作量,工作變少,開發速度變得更快。
更棒的是,用 Laravel 開發除了快,它的架構設計優美,維護起來彈性又愉快,讓你一次開發多個案子,維護起來變得更輕鬆。
使用好寫易學的 PHP 程式語言
大多數人接觸網站開發的主要難題是程式語言。其實,程式語法是用來與電腦溝通,重點在於讓電腦明白你要什麼,掌握了電腦思考的方式,寫程式和解決問題其實並不困難。
而 Laravel 使用的是好寫易學的 PHP 語法,怎麼寫都通,甚至電腦還會自動猜你要說什麼,不怕寫不出來,只怕講不清楚,所以非常適合新手學習,且熟悉之後開發速度極快!此外,全世界約有兩億台以上的電腦在執行 PHP 程式,數字也表明這是一個易學又值得精的程式語言。
如果沒學過 PHP 也沒關係,在基礎知識篇會介紹基礎語法和進階技巧,內容會包含到所有在撰寫 Laravel 應用時需要了解的知識,絕對不讓您落單,不需要擔心。
課程單元說明
單元,來自於專案進展所需的技術。沒有冷知識,只有硬道理!單元規劃的思路上,以技術難度為經,以專案進展需求為緯,規劃出平緩的學習曲線與順暢的實作內容。
單元共分為基礎知識篇、Laravel 入門篇、Laravel 實戰篇三大章節,每個章節最後也將銜接專題實戰,把所學立刻用進專案裡頭,讓你就像看食譜一樣,看到哪裡做到哪裡,步驟做完之後,網站立刻上桌!
1. 基礎知識篇
在這個單元,課程將會一步步帶領你準備好開發一個電子商務網站所需要具備的電腦環境,不管您習慣用 Windows 作業系統還是 MacOSX,都可以無痛的建立起您的第一個 Laravel 驚奇專案,同時把學習 Laravel 框架所需要的先備知識,在這個單元一次性提供給你!
另外這個單元也會教你如何進行版本控管,這個技巧能讓你坐上時光機器,回到程式開發過程中的某一個進度去。
聽說很多寫程式寫到去賣雞排的,就是版本控管沒學到家,你參考看看。屬於沒學不會死,學了變超強的知識點,最好掌握。這個章節包含:
1. Voyager 套件簡介:如何快速生成後台、設定權限、資料庫、選單、多媒體管理等說明。2. 開發環境建置:如何在 Windows 和 MAC 作業系統上安裝開發環境。3. Laravel 輔助工具 composer 介紹:說明如何使用及設定 PHP 的套件管理工具。4. Laravel 專案建立與說明:說明如何用 composer 生成特定版本的 Laravel 應用,並介紹專案資料夾結構。5. MVC 架構:介紹軟體架構模式 MVC。6. Visual Studio Code:說明該如何使用 Visual Studio Code 這個整合開發環境,並安裝常用的外掛。7. 基礎 PHP 語法:介紹 PHP 最常見的語法,幫助未學過的你快速入門。8. 進階 PHP 語法:說明 PHP 較為進階的觀念,能幫助你更好的架構 PHP 應用。9. SQL 語法與 PhpMyAdmin:介紹資料庫查詢語句 SQL 語法以及 PhpMyAdmin 介面,幫助未學過資料庫存取的你快速入門。10. Git 版本控管 Version Control:介紹版本控管技術 Git,並說明如何使用 SourceTree 幫你更好地管理版本。2. Laravel 入門篇
在 Laravel 入門篇,重點介紹框架的核心概念與中英文專業術語。只懂概念不懂術語無法自行上網找資料自學,只懂術語不懂概念就是學校教法的最大問題。兩者皆通就能掌握框架的形與義,為走向實戰打好基礎,必須掌握。
1. 路由 Routing:說明如何透過 Route 路由來管理請求。2. 控制器 Controller: 說明如何透過 Controller 來處理請求與取得前台資料。3. 視圖 View 與 Blade 樣板引擎:說明 Laravel 的顯示層與資料呈現是如何運作的。4. 資料庫表格建立 Database Migration:說明 Laravel 如何利用 Migration 來自動生成資料庫表格。5. 資料表假資料建立 Seeding & Faker:說明 Laravel 如何利用 Seeding 來自動生成資料,並透過 Faker 套件來自動生成假資料。6. 物件關聯對應資料庫 Eloquent/ORM:說明如何讓 Laravel 為你的資料庫表格建立模型,並以物件導向的概念來存取資料。7. 物件關聯對應 Eloquent Relationship:說明 Laravel 如何處理一對一、一對多、多對多關聯式表格的資料存取。8. 表單驗證 Forms and Validation:說明 Laravel 如何不寫一行程式碼,透過設定的方式來進行表單欄位驗證。3. Laravel 實戰篇
在 Laravel 實戰篇,所教學的技術大部分都屬於沒使用也可以做的出網站,但會很辛苦,屬於 Nice to Have 的知識篇章,能否做出可重複利用與高度開發速度的秘密也多半都在在這些單元內,教學的知識有一些難度,但是一旦掌握起來對自己有很大的幫助,例如 Voyager 實戰章節將詳細說明如何使用 Voyager 套件來快速生成,強烈建議掌握。
1. 從 A2Hosting 購買域名與共享託管空間:以國外知名的網頁空間商 A2Hosting 為例,說明該如何為你的應用申請一個自己的網域以及購買共享託管空間。2. 專案上線到雲端與管理實務:說明如何設定 SSH 連線以便透過 Git 的方式來上傳應用,並使用 composer 來管理套件,以 A2Hosting 為例。簡單介紹如何使用 Cpanel 的常見功能。3. 註冊登入機制建立:說明如何使用 Laravel 自帶的機制來快速實作註冊.登入.忘記密碼等功能,並示範如何客製化畫面以及改為亞洲常用的帳號登入而非 email。4. 模型進階操作 Model manipulation:說明如何在模型裡頭加上 scope.getter.setter 功能,以幫助你更好的處理資料。5. Voyager 套件安裝與設定:說明如何安裝 Voyager 套件,並介紹常用的設定。6. Voyager 套件實戰:說明如何使用 Voyager 來建立權限、資料庫、選單、多媒體管理等功能。7. 工作階段 Session:說明如何透過 session 機制來進行跨頁資料存取。8. 臉書/Google+ 帳號登入 Socialite:說明如何使用 Laravel 官方套件 Socialite 來實作第三方登入,比如 Facebook、Google+、Github 等等。9. 本地化 Localized 實作:說明如何讓 Laravel 應用支援多語系。10. FlashMessage 實作:說明如何在使用者的請求完成後在前台跳出一個訊息框來提示作業完成。11. 購物車實作:說明如何使用套件來快速實作購物車,讓使用者可以在一筆訂單內下多個商品。教學特色
快速後台建置解決方案
本課程導入 Voyager 套件,讓你無痛且快速擁有自己的專業網站後台,不再為後台介面與資料庫讀寫而發愁,專為無實作經驗的人而設計的解決方案。
學習最新的穩定 5.8 版本
目前 Laravel 6 版本正在發展中,Laravel 5 相對穩定且同樣強大,要學就學最新的Laravel 5.8 版本。
慢動作拆解「電商網站」開發步驟
整個課程橫貫一個「電子商務網站」的開發,一步步的分解就是要讓您學會開發真正的電子商務網站所需具備的基礎知識,而非只是聽到一堆 Laravel 專用名詞。
最省錢的上線方案
說明如何使用最便宜的雲端虛擬空間來運作 Laravel 應用,並導入 Git 來作版本控管。
我不需要去證明自己是平台上 Laravel 程式最厲害的老師,因為那不重要。我也曾在論壇上聽高手教學分享聽不懂到睡著,更明白自己能學到多少比老師多厲害還重要,我將透過生活化、歸納的方式來協助你更好的理解程式,大幅縮短你摸索的時間,就是我的教學特色
教學目標與預期成果
課程目標為帶領學員做出一個「帶後台的電子商務網站」,所有的前台資料都能從後台進行修改,設定角色權限來確保只有管理者能夠改動授權內容,而一般使用者只能夠進行下單的動作。過程中你將掌握以下學習成果
- PHP 程式語法
- Composer
- Visual Studio Code
- SQL 語法
- Laravel 框架 5.8 版本框架知識
- Voyager 套件
網站做出來之後,最重要的就是要和全世界網友分享,課程後段會介紹如何把網站放上雲端,並更好的管理程式碼,過程中你將掌握以下學習成果
- Git 版本控管
- 使用共享託管平台
期待不久之後,你超越我,成為 Laravel 界的大大,那就是我認為最美好的事!
贈獎活動說明
分享領大補帖
Step 1. 加入哥布林程式教育學苑粉絲團(https://www.facebook.com/goblinLab/)。
Step 2. 只要在本貼文下按讚、留言及分享──你最期待的課程單元,留言格式範例:「我最期待第 23 單元 Voyager 套件實戰」、「第 26 單元:臉書 / Google+ 帳號登入 Socialite」等等(瀏覽權限請設為公開。未公開者將不列入贈獎資格,敬請見諒。)
Step 3. 發信到 info@goblinlab.org 附上留言截圖,我們將在收到信後 3 天內回覆並附上 Laravel 5 大補帖。
回覆與作業設計
撰寫過程中如遇到問題歡迎提出來討論,講師會在三天內回覆。作業 - 課後練習與課後專題(每位學員使用同一 PO 文管理個人作業,標題為作業)只有透過實作才能更好的理解程式,希望參與課程的學員能夠跟著範例做出自己的購物網站,並且把程式碼和資料庫的 SQL 檔上傳到自己的 Github 上累積自己的作品集,積極參與課程討論也能夠幫助自己整合所學知識!
請到 Github 建立一個新的學習專案,並把自己的作業專案上傳上去。把每一個單元的作業都作為一次的提交。
學員如堅持到最後把自己的專題完成,請提供 Github 專案網址以及資料庫 SQL 檔案,並在 README.md 上面說明管理員登入帳號密碼以及專題介紹,講師會在七天內給予反饋。
章節 2 作業
- [單元一] 請編輯 web.php,撰寫自己購物網站的頁面路由
- [單元二] 請新增自己的 Controller,並將單元一作業的路由指派給這個控制器的方法
- [單元三] 請新增一個 Blade 檔案,並把自己喜歡的購物網頁的 html 內容貼進去。接著在單元二作業所指派的方法內來顯示這個 Blade 檔案
- [單元四~五] 請規劃自己的購物網站所需要的表格欄位與假資料,並轉為 Migration 和 Seeding
- [單元六~七] 請在 Model 檔案內去宣告表格間的關聯性,嘗試做出一對一、一對多與多對多等關係。比如每個商品只屬於一個分類,這是一對一。每個分類有多個商品,為一對多。而每個商品有多個標籤,每個標籤也屬於多個商品,就是多對多。
- [單元八~十] 請設計自己購物網站的聯絡我們頁面,加入多種的輸入項,比如文字、單選、下拉等等,針對文字輸入項加入一些驗證條件,最後試著在控制器的方法內去取出使用者所輸入的資料。
章節 3 作業
- [單元三] 導入 Laravel 內建的註冊/登入機制,並試著修改這些預設頁面以符合自己需求。並且改為使用帳號而非 email 來進行登入。
- [單元四] 試著在 Model 檔案內去加入一些常用搜尋 Scope,並且加入 Getter 和 Setter 的方法。
- [單元五] 試著在自己的購物網站導入 Voyager 套件。
- [單元八] 試著使用 Laravel 的 Socialite 套件來實作 Facebook 登入,並修改登入頁面以加入 Facebook 登入功能。
- [單元十] 試著在自己的購物網站加入購物車功能。
課後專題
請學員截圖網站首頁圖片上傳到作業區,並且附上 Github 網址供大家互相參考。
解鎖單元
當募資人數達到指定的 % 數之後就會追加更多實用的小技巧,幫助你更快的寫出應用,有興趣的朋友歡迎多多分享唷。
(已解鎖)募資達 200% 加碼內容:如何利用 Gmail 寄信,開課後一週上線
(未解鎖)募資達 300% 加碼內容:利用套版素材製作優雅的前台,開課後一週上線(未解鎖)募資達 400% 加碼內容:Select2 函式庫使用技巧,開課後二週上線(未解鎖)募資達 500% 加碼內容:檔案上傳 Files Upload,開課後二週上線(未解鎖)募資達 600% 加碼內容:第三方金流串接(以綠界為例),開課後三週上線(未解鎖)募資達 700% 加碼內容:Cpanel 操作說明,開課後三週上線(未解鎖)募資達 800% 加碼內容:DataTable 函式庫使用技巧,開課後四週上線(未解鎖)募資達 900% 加碼內容:Excel 檔案輸出,開課後四週上線(未解鎖)募資達 1000% 加碼內容:單元測試,開課後四週上線講師介紹
我的價值不在實力多屌,而在縮短新手多少黑暗中摸索的時間
我是個無法救藥的夢想浪漫派,曾經放棄國泰人壽培訓經理的百萬年薪,非科班出身卻中途轉戰資訊產業,付出薪水腰斬一半的代價。幾年後在大型企業由總經理簽發一次調薪 50% 的批文,更獲得全部門唯一可領全薪在家工作的福利,卻又忘不掉冒險的那種刺激而甘願放棄。
作過研發經理,創辦過兩間遊戲公司,現在擔任哥布林程式教育學苑創辦人。擅長教授 App 遊戲開發、Laravel 程式開發,教授過學生上百人,上課時數超過 1000 小時,現為 Laravel 框架的忠實擁護者,所開發 Laravel 產品 EasyWeb 以其簡單易用深得客戶肯定。
不是科班出生,沒在 Google 上過班,和你們一樣。卻是極少數受過專業培訓技巧的資深工程師,現任程式啟蒙老師與程式職能教練等職務。
講者作品
專業美觀的後台,所有網頁資料列表呈現,一目了然,關鍵字現找現改
所有網頁內容全部進到資料庫進行儲存,於後台用 DataTable 來進行呈現,可分頁、可排序、可過濾、可關鍵字搜尋。30 分鐘交接完畢,廣受專案客戶喜愛。
好用的表單輸入項,決定了你和客戶心與心的距離
講師所開發的 EasyWeb 產品,輸入項使用了 CkEditor、Select2、refreshMessage 以及 Ajax 等技巧,加速使用者在輸入資料上的速度,更獲得專案客戶行政人員的支持。
完整的電子商務功能,實現了每個賣家擁有自家網店的夢想
EasyWeb 的最新功能模塊,從商品顯示到購物車,從下訂單到管理出貨。程式架構清楚,商品分類規劃完善。本次課程就是要讓您學會做出這樣的網站作品。
學員反饋
林X名:老師上課上的還滿仔細的也滿有趣的 。
彭X翔:上完 Laravel 後發現不需要寫太多的 PHP 程式,也能夠開發出相同的網頁,覺得很方便。
林X哲:線上教學節奏有序。
何芷韻:我覺得這種互動學習的方式也許適合我,結果證明,我的決定是正確的,也瞭解到程式不難,難的是找到一個啟蒙的導師。
唐同學:程式對我還有很大的學習、探索空間,我的感覺是知道越多越有趣的,比起同學我可以說先跑了一段不短的路了,想到這我就越有動力想要再學到更多,能找到對的方向和老師是一件很幸運的事情。
