laravel學(xué)習(xí)

最近做項(xiàng)目用到了laravel框架柠硕,所以決定從前端的角度對laravel進(jìn)行了一些學(xué)習(xí)和總結(jié)妖枚。

laravel簡介

1、laravel是php框架
2峭竣、具有驗(yàn)證塘辅、路由、session皆撩、緩存扣墩、數(shù)據(jù)庫遷移工具哲银、單元測試等常用的工具和功能

laravel使用

1、開發(fā)環(huán)境

1.對php版本的要求

laravel版本 PHP版本
5.1呻惕、5.2 5.5.9+
4.2 5.4+
4.1 5.3.7+

ps:laravel發(fā)布的第一個(gè)LTS(long time support)版本是5.1荆责,建議使用5.1以上版本

2.Windows系統(tǒng)下使用的是XAMPP搭建環(huán)境

xampp

上圖XAMPP安裝后XAMPP文件夾下文件目錄
2、下載
1亚脆、直接下載地址:http://www.golaravel.com/download/
2做院、本文案例使用5.2版本
3、啟動(dòng)XAMPP濒持,下載的安裝包解壓键耕,解壓后的文件夾整個(gè)放入htdocs目錄下
4、在瀏覽器中輸入http://localhost:82/laravel/public/柑营,82是我設(shè)置的端口郁竟,默認(rèn)端口是80
5、如果不出錯(cuò)可以看到以下內(nèi)容
laravel5

3由境、目錄
laravel目錄

1、app包含應(yīng)用程序的核心代碼
ps:MVC中的C蓖议,即controller放在app文件夾下的http文件夾中
2虏杰、bootstrap目錄包含框架啟動(dòng)和自動(dòng)加載配置的文件
3、config包含所有應(yīng)用程序的配置文件勒虾,eg:緩存纺阔,數(shù)據(jù)庫,郵件修然,隊(duì)列笛钝,session,視圖and so on愕宋。
4玻靡、database,數(shù)據(jù)庫遷移與數(shù)據(jù)填充文件
5中贝、storage放一些編譯后生成的文件
6囤捻、tests測試相關(guān)
7、vendor放置一些依賴模塊
8邻寿、public文件夾放一些公用的css蝎土,js,image圖片等
9绣否、resources放一些模板誊涯,視圖文件

4、寫一個(gè)Hello World
在安裝時(shí)我們曾經(jīng)看到過laravel5蒜撮,這個(gè)頁面是laravel框架的默認(rèn)welcome頁暴构,該頁面方式resources文件夾下面的views文件夾中,文件名叫做welcome.blade.php,打開該文件將Laravel 5改為Hello World丹壕!
刷新頁面done~

laravel框架新建頁面流程

1庆械、什么是路由
路由:當(dāng)用戶訪問一個(gè)URL地址時(shí),瀏覽器請求相應(yīng)的頁面菌赖,這其中路由控制著資源和URI的對應(yīng)關(guān)系缭乘。
在laravel中路由文件routes.php用于放在app/Http/下。上節(jié)例子中Hello world寫在welcome.blade.php文件中琉用,該文件位于laravel項(xiàng)目的根目錄下堕绩,因此打開routes.php文件可以看到對應(yīng)的路由是

Route::get('/', function () {
    return view('welcome');
});

這段代碼Route路由使用get方法,在根目錄下返回一個(gè)視圖邑时,該視圖就是放在resources下的views文件夾下的welcome文件奴紧。
寫個(gè)小頁面
在resources/views/下新建monday.blade.php文件,里面寫‘今天周一’晶丘,在routes.php文件中寫上以下代碼

Route::get('monday', function () {
    return view('monday');
});

瀏覽器中訪問http://localhost:**/laravel/public/monday 可以看到剛剛效果黍氮。
ps:路由的請求方法有多重,get只是其中的一種浅浮,除此之外還有post沫浆,put,delete等多種方法
2滚秩、新建控制器
控制器負(fù)責(zé)從視圖讀取數(shù)據(jù)专执、控制用戶輸入、并且像模型發(fā)送數(shù)據(jù)
在laravel中新建控制器需要在Http/Controllers文件夾下郁油,新建一個(gè)控制器文件本股。

新建步奏
1、在Http/Controllers文件夾下新建一個(gè)php文件命名為WeekController.php
在該文件中輸入以下代碼

<?php
namespace App\Http\Controllers;
use App\Week;
// 聲明命名空間
// 創(chuàng)建一個(gè)類WeekController繼承自控制器基類
class WeekController extends Controller
{
    // 寫一個(gè)方法
    public function week()
    {
        return 'week';
    }
}

2桐腌、將控制器與路由相關(guān)聯(lián)
在routes.php中添加以下代碼

Route::get('week','WeekController@week');

瀏覽器訪問就可以看到網(wǎng)頁中輸出week拄显。
3、新建視圖
之前已經(jīng)提到過視圖頁面放在resources/views/下
新建步奏
1案站、在該文件夾下新建一個(gè)week.blade.php文件凿叠,敲入

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>新建視圖</title>
</head>
<body>
    今天星期四
</body>
</html>

2、打開routes.php文件嚼吞,敲入

Route::get('weekdemo',function(){
    return view('week');
});

4盒件、新建模型
laravel中模型是直接放在App目錄下,模型是應(yīng)用程序的主體部分,模型是對業(yè)務(wù)數(shù)據(jù)的封裝用于實(shí)現(xiàn)業(yè)務(wù)邏輯舱禽。
在App目錄下有一個(gè)默認(rèn)的model叫做User.php炒刁。當(dāng)我們需要建立自己的模型時(shí)可以新建一個(gè)自己的php文件,比如新建一個(gè)week.php誊稚。
里面會(huì)有下面三行代碼

<?php
namespace App;
use Illuminate\Database\Eloquent\Model;

和控制器相似這個(gè)也是對命名空間的聲明
然后敲入如下代碼

class Week extends Model
{
    public static function getWeek(){
        return 'today is monday';
    }
}

然后使用時(shí)在控制器中的week方法里return Week::getWeek();即可翔始。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末罗心,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子城瞎,更是在濱河造成了極大的恐慌渤闷,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,602評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件脖镀,死亡現(xiàn)場離奇詭異飒箭,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)蜒灰,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,442評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門弦蹂,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人强窖,你說我怎么就攤上這事凸椿。” “怎么了翅溺?”我有些...
    開封第一講書人閱讀 152,878評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵脑漫,是天一觀的道長。 經(jīng)常有香客問我咙崎,道長优幸,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,306評(píng)論 1 279
  • 正文 為了忘掉前任叙凡,我火速辦了婚禮,結(jié)果婚禮上密末,老公的妹妹穿的比我還像新娘握爷。我一直安慰自己,他們只是感情好严里,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,330評(píng)論 5 373
  • 文/花漫 我一把揭開白布新啼。 她就那樣靜靜地躺著,像睡著了一般刹碾。 火紅的嫁衣襯著肌膚如雪燥撞。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,071評(píng)論 1 285
  • 那天迷帜,我揣著相機(jī)與錄音物舒,去河邊找鬼。 笑死戏锹,一個(gè)胖子當(dāng)著我的面吹牛冠胯,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播锦针,決...
    沈念sama閱讀 38,382評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼荠察,長吁一口氣:“原來是場噩夢啊……” “哼置蜀!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起悉盆,我...
    開封第一講書人閱讀 37,006評(píng)論 0 259
  • 序言:老撾萬榮一對情侶失蹤盯荤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后焕盟,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體秋秤,經(jīng)...
    沈念sama閱讀 43,512評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,965評(píng)論 2 325
  • 正文 我和宋清朗相戀三年京髓,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了航缀。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,094評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡堰怨,死狀恐怖芥玉,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情备图,我是刑警寧澤灿巧,帶...
    沈念sama閱讀 33,732評(píng)論 4 323
  • 正文 年R本政府宣布,位于F島的核電站揽涮,受9級(jí)特大地震影響抠藕,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜蒋困,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,283評(píng)論 3 307
  • 文/蒙蒙 一盾似、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧雪标,春花似錦零院、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,286評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至嵌牺,卻和暖如春打洼,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背逆粹。 一陣腳步聲響...
    開封第一講書人閱讀 31,512評(píng)論 1 262
  • 我被黑心中介騙來泰國打工募疮, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人僻弹。 一個(gè)月前我還...
    沈念sama閱讀 45,536評(píng)論 2 354
  • 正文 我出身青樓酝锅,卻偏偏與公主長得像,于是被迫代替她去往敵國和親奢方。 傳聞我的和親對象是個(gè)殘疾皇子搔扁,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,828評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容