版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
laravel框架①-laravel簡介laravel是當前一種比較主流框架,當前諸多互聯(lián)網(wǎng)公司基本都在使用該框架。該框架是基于symfony【國外一款非常流行框架:由于國內手冊不是很齊全,沒有多少公司使用】一種國外MVC框架。laravel定位就是做一種簡潔使用程序員框架。為web藝術而開發(fā)。注意:由于這些資源信息是在國外,人們在使用某些VPN工具時候,也許會讓自己虛擬主機無法訪問,則自己使用過程中,先退出一下VPN,然后在設立虛擬主機。當前大某些框架公有特點:單入口:所有祈求必要從單入口開始:重要是關于管理【統(tǒng)一參數(shù)過濾】。MVC思想【分層思想:重要是為了協(xié)同開發(fā)---實現(xiàn)后期維護以便框架自身寫好了諸多基本性代碼,不再需要重復造輪子】ORM操作數(shù)據(jù)庫【ObejectRelationshipModel:翻譯過來,一種模型對象相應數(shù)據(jù)表里面一張表,對象屬性就是表字段名,對象下辦法就是對表中記錄curd操作】例如:$userModel[username]========sh_user[username]擴展:弄混:CRM【ClientRelationshipMap】客戶關系管理系統(tǒng),普通來說是使用Java開發(fā)一種軟件用來維護公司和公司,公司和顧客之間關系一種軟件【保存顧客資料信息和關系軟件】,有時候還可以聽到Java開發(fā)ERP系統(tǒng)(公司資源管理系統(tǒng)),使用Java語法開發(fā)一種公司內部資源信息管理軟件。尚有時候聽到Java開發(fā)OA項目【無紙化辦公、低碳】【清晰php是不適合做OA項目】。桌面:Delphi語言(寶蘭公司語言,當前已經(jīng)被收購,曾經(jīng)和諾基亞),C++,VB(微軟)注意:laravel框架有一種很特別地方,所有url訪問都必要要事先定義好一種路由規(guī)則。對比之前TP|CI框架index.php---Router(Dispatcher)路由器類文獻是隱式操作,意思就是說和程序員無關【程序員不用去獲取控制器或者調用控制器辦法】,框架自己會去匹配url里面控制器和辦法,框架自己完畢類實例化和辦法調用。因此laravel是一種重路由框架。記?。?.重路由2.依賴注入【設計模式用多】3.純面向對象框架【和YII框架也是】比喻:TP里面從數(shù)據(jù)庫獲取數(shù)據(jù)是一種關聯(lián)數(shù)組,但是laravel獲取數(shù)據(jù)必定是一種對象。②-開發(fā)環(huán)境規(guī)定注意:laravel框架有運營對環(huán)境是有嚴格規(guī)定。注意:在修改php.ini配備文獻系統(tǒng)時候,先使用phpinfo函數(shù)進行查看究竟使用是哪個php.ini配備文獻(Linux開發(fā))建議wamp2.5開發(fā)環(huán)境就可以。php版本信息擴展信息注意:使用pathinfo函數(shù)檢查時候,必要要有如下信息注意:同步還要啟動Apacherewrite模塊后需要重啟Apache注意:需要把php.exe加入系統(tǒng)開發(fā)環(huán)境變量里面查找php.exe途徑位置將上面php.exe途徑加入到系統(tǒng)環(huán)境里面如果在命令行里面可以看到這些信息:則代表配備成功。【必要先把php.exe途徑信息加入到環(huán)境變量】③-laravel安裝方式簡介需要注意是,該框架安裝分為兩種方式:使用專業(yè)軟件composer軟件(php類庫管理器(上傳類、驗證碼類....),可以幫咱們自動去互聯(lián)網(wǎng)下載開發(fā)過程中所需要類庫文獻和Linux下包管理器yum比較類似,和node.js里面npm,也和前端里面bower相似)理解:360軟件QQ軟件管理【要什么軟件喊一下】簡介:該工具需要借助一定工具才可以使用(VPN工具),這次課程也不使用這種方式。有時間還是要自己去研究一下。使用手工安裝,需要自己去下載laravel框架源碼?!総hinkphp---onethink框架----基于onethink這個框架開發(fā)了一種微信公眾號管理開源產(chǎn)品weiphp[小豬cms](ECShop、discuz!)】網(wǎng)站:本次開發(fā)使用5.1.11版本:該版本是官方推出長期支持一種版本,提供3年維護期。開源:1.bug修復2.版本兼容性。注意:當前l(fā)avarel版本最新應當是5.3。但是公司使用更多還是5.1【官方長期支持】。微信公眾賬號管理平臺://【諸多公司使用這個】④-laravel詳細安裝虛擬主鍵創(chuàng)立(注意:public問題),由于laravel框架入口文獻index.php時候在public目錄,因此在配備虛擬主機目錄時候,需要配備到public下。虛擬主機配備:<VirtualHost*:80>DocumentRoot"D:\vhost\\public"ServerName<Directory"D:\vhost\\public">OptionsIndexesFollowSymLinksAllowOverrideAllOrderallow,denyAllowfromall</Directory></VirtualHost>修改hosts文獻重啟見到這個代表運營成功
⑤-laravel目錄構造分析該框架目錄構造和原先使用某些開源框架TP構造還是有很大區(qū)別。app目錄:重要是存儲自己開發(fā)應用代碼(里面重要書寫控制器和模型和路由文獻)bootstrap目錄:laravel啟動目錄config目錄:重要是存儲配備文獻信息database目錄:數(shù)據(jù)遷移功能public目錄:單入口和系統(tǒng)靜態(tài)資源(css、img、js、uploads)resources目錄:存儲視圖文獻storage目錄:重要是存儲緩存文獻和日記文獻,需要注意:如果是在Linux環(huán)境下,該目錄需要有可寫權限vendor目錄:重要是存儲第三方類庫文獻,laravel思想重要是共同開發(fā),不要重復造輪子(例如:里面也許存在驗證碼類、上傳類、郵件類),還需要注意該目錄還存儲laravel框架源碼。注意:如果使用composer軟件管理,composer下載類庫都是存儲在該目錄下?!締栴}:版權問題....】學習成本高:實用【不劃算、會用就好】【TP、CI源碼必要要看】.env文獻:重要是設立某些系統(tǒng)有關環(huán)境配備文獻信息。config目錄里面文獻配備內容普通都是讀取該文獻里面配備信息(config里面配備項值基本都是來自.env文獻)。
二、laravel入門使用要想laravel玩好,路由必要掌握。①-路由簡介簡樸說就是將顧客祈求轉發(fā)給相應php程序去解決路由作用就是建立url祈求和php程序【控制器下辦法或者視圖、甚至直接返回一種字符串】之間映射,需要注意laravel框架里面路由是必要【laravel可以不寫控制器、也不可以寫模型、也可以不寫視圖】,并且每個路由規(guī)則是唯一性。laravel是一種重路由框架。祈求類型get、put、post、patch、delete、tarce...等【http祈求分6種,但是并不是所有祈求web服務器都支持】任何框架TP|CI|laravel都離不開路由,例如TP框架里面形如這樣URL地址:;代表祈求是Home模塊下,User控制器下add辦法【普通其她框架都是路由隱藏了】5.參照手冊②-路由入門使用路由文獻位置內容路由文獻內容分析3.測試視圖視圖文獻瀏覽器訪問
③-視圖使用思考:視圖寫哪里?視圖文獻如何命名?【a..blade.phpb.php】視圖里面內容該如何書寫?【a.html代碼b.原生php代碼c.laravel標簽語法(必要是以.blade.php結尾視圖)】在控制器-路由文獻里面如何調用視圖?【view(‘view’)】如何給視圖賦值?【a.withb.view傳參】如何在視圖里面顯示控制器賦值變量信息?【a.原生b.{{$title}}插值表達式】視圖與否可以分目錄管理?實操:視圖文獻寫在哪里視圖文獻如何命名文獻名習慣小寫(建議小寫)文獻名后綴是.blade.php(由于laravel里面有一套模板引擎就是使用blade,可以直接使用標簽語法{{$title}},也可以使用原生php語法顯示數(shù)據(jù)。)需要注意是也可以使用.php結尾,但是這樣話就不能使用laravel提供標簽{{$title}}語法顯示數(shù)據(jù),只能使用原生語法<?phpecho$title;?>顯示數(shù)據(jù)視圖文獻里面內容如何書寫可以直接寫html代碼可以直接書寫原生php代碼可以使用標簽語法書寫代碼【但是后綴必要是.blade.php結尾】代碼效果視圖文獻分文獻夾管理【需要注意是分目錄后,使用.號代表文獻分割符/】④-控制器使用在laravel里面控制器并不是必要。可以把所有代碼寫在路由文獻里面,但是這樣寫話是不便于管理,因此不建議這樣做,還是建議自己書寫控制器文獻。然后在路由規(guī)則里面相應控制器下辦法。思考:控制器文獻寫在哪里?控制器文獻如何命名?內容如何書寫?【使用大駝峰命名,同步注意命名空間和基類控制器引入】如何在控制器里面載入視圖?如何給視圖賦值?如何在視圖顯示數(shù)據(jù)?如何使用路由規(guī)則調用控制器下辦法控制器與否可以分管理?【可以】控制器注意命名空間問題:
三、DB類操作數(shù)據(jù)庫【重點-模型】按照MVC架構,對數(shù)據(jù)操作應當放在Model中完畢,但如果不使用Model,咱們也可以用laravel框架提供DB類操作數(shù)據(jù)庫。并且,對于某些極其復雜sql,用Model已經(jīng)很難完畢,需要開發(fā)者自己手寫sql語句,使用用DB類去執(zhí)行原生sql。laravel中DB類基本用法DB::table('tableName')獲取操作tableName表實例。①-數(shù)據(jù)庫創(chuàng)立和配備1.完畢數(shù)據(jù)表設計和數(shù)據(jù)庫配備2.配備數(shù)據(jù)庫信息3.還要修改config目錄下database.php文獻②-設計路由規(guī)則在路由文獻定義路由規(guī)則③-創(chuàng)立DbController.php文獻切換到項目目錄2.使用命令行創(chuàng)立>phpartisanmake:controllerAdmin\DbController當前代表需要在app\Http\Controllers\Admin這個目錄創(chuàng)立DbController.php3.創(chuàng)立后④-數(shù)據(jù)添加插入單行,一維數(shù)組形式,數(shù)組鍵就是表中字段,返回值為true和false。代碼:$row=['titles'=>'測試數(shù)據(jù)','email'=>''];DB::table('goods')->insert($row);案例:效果:插入多行,二維數(shù)組形式,二維數(shù)組中單元鍵是表中字段,返回值為true和false。$rows=array(array('titles'=>'測試數(shù)據(jù)1','email'=>''),array('titles'=>'測試數(shù)據(jù)2','email'=>''));DB::table('goods')->insert($rows);案例:插入后返回主鍵值,獲取主鍵值用insertGetId()辦法(但是需要注意是對多維數(shù)組不行)$row=['titles'=>'測試數(shù)據(jù)','email'=>''];$id=DB::table('goods')->insertGetId($row);var_dump($id);案例:效果:⑤-數(shù)據(jù)更新在laravel中對數(shù)據(jù)修改如下:DB::table('tableName')->where('id',1)->update(['age'=>19]);對于上面操作相稱于sql:updatetableNamesetage=19whereid=1;案例:如果但愿在某字段在原基本上增長或減少則可以使用increment/decrement辦法,返回值是受影響行數(shù)。例如:DB::table('users')->where('id',1)->increment('age');//默認步長為1DB::table('users')->where('id',2)->increment('age',3);//第二個參數(shù),指定步長DB::table('users')->where('id',3)->decrement('age');DB::table('users')->where('id',4)->decrement('age',3);⑥-數(shù)據(jù)刪除在laravel中對數(shù)據(jù)修改如下:DB::table(‘tableName’)->where('id','>',3)->delete();備注:當where辦法有三個參數(shù)時,其中第二個參數(shù)當做運算符,并且返回值是受影響行數(shù)。案例:效果:⑦-數(shù)據(jù)顯示注意:在laravel里面取出數(shù)據(jù),無論是單行還是多行,每一行數(shù)據(jù)都是以一種對象形式組織,不是關聯(lián)數(shù)組。a.獲取所有數(shù)據(jù)DB::table('goods')->get();等價操作:select*fromgoods;案例:效果:b.按條件獲取數(shù)據(jù)DB::table('goods'
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2023-2024學年浙江省寧波市慈溪市高三第三次教學質量監(jiān)測數(shù)學試題試卷
- 城市擴建土地征用協(xié)議范例2024
- 2024年公司銷售協(xié)議條款樣本
- 2024年食品企業(yè)廠長聘任協(xié)議范本
- 2024年度專項法律支持公司協(xié)議
- 2024公司行政人員專屬勞動協(xié)議草案
- 文書模板-應屆生三方協(xié)議簽訂流程
- 2024年子女贍養(yǎng)義務履行協(xié)議
- 2024年家用電器保修協(xié)議樣本
- 辦公室裝修升級協(xié)議模板 2024
- 混料機的安全操作規(guī)程有哪些(8篇)
- 期中 (試題) -2024-2025學年譯林版(三起)英語六年級上冊
- 期中測試卷-2024-2025學年統(tǒng)編版語文一年級上冊
- 國家基本醫(yī)療保險、工傷保險和生育保險藥品目錄(2023年)
- 人教版一年級數(shù)學上冊《第一、二單元測試卷》(附答案)
- 人教版二年級上冊數(shù)學計算題400道
- 供應室教學課件
- 第三單元 測量(單元測試)-2024-2025學年三年級上冊數(shù)學人教版
- 1輸變電工程施工質量驗收統(tǒng)一表式(線路工程)-2024年版
- 計算機應用基礎
- 華為年財務報表分析(共16張課件)
評論
0/150
提交評論