Laravel 4 正式发布了 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
PrideChung
V2EX    PHP

Laravel 4 正式发布了

  •  
  •   PrideChung 2013-05-30 11:40:48 +08:00 16083 次点击
    这是一个创建于 4585 天前的主题,其中的信息可能已经有所发展或是发生改变。
    Laravel ( http://laravel.com/ ) 是现在PHP社区里面相当火的一个full stack框架,大量地使用了PHP 5.3带来的闭包功能,使得语法比较简洁。主要功能包括路由,ORM,DB Migration,模板,单元测试,命令行工具,还有其他乱七八糟的东西。之前说过在5月内发布,最后两天终于赶上了,官网也改版了,十分漂亮。

    这次更新比较大的变化是去除了Laravel之前自己的包管理系统,拥抱PHP社区的新星Composer,引入了一些Symphony的组件,框架的体积无可避免地变大了。
    模板的关键字也所改变,其实我个人不太明白这么改的意义,作者说是为了更好的可读性,我觉得没什么区别,还会给升级带来麻烦。

    其他还有各种琐碎的改变,见Changelog。
    http://wiki.laravel.io/Changelog_(Laravel_4)

    打算在下个私人项目里面试试。
    70 条回复    1970-01-01 08:00:00 +08:00
    kiancyc
        1
    kiancyc  
       2013-05-30 13:53:25 +08:00   1
    试了下Laravel4的Beta,感觉很不错。应该是目前PHP框架里面最好用的。
    希望正式发布了代码实例能多点。
    Feobe
        2
    Feobe  
       2013-05-30 14:14:40 +08:00
    更爱kohana。
    subpo
        3
    subpo  
       2013-05-30 14:17:21 +08:00
    看起来好
    endintro
        4
    endintro  
       2013-05-30 15:02:39 +08:00
    和symphony比较有什么优势?
    blandlove
        5
    blandlove  
       2013-05-30 15:10:36 +08:00
    表示钟爱她的 路由 ,架构清晰
    KiseXu
        6
    KiseXu  
       2013-05-30 17:25:30 +08:00
    请问这个单词怎么读
    PrideChung
        7
    PrideChung  
    OP
       2013-05-31 11:50:37 +08:00
    @endintro 没用过Symphony,不太好说,PHP的框架成百上千,估计没几个人能挨个试,只能看别人的评价和眼缘了。


    @KiseXu 看看老外是怎么念的 https://tutsplus.com/course/whats-new-in-laravel-4/
    pubby
        8
    pubby  
       2013-05-31 12:02:42 +08:00
    用Zend+Propel的飘过 ,功能足够,性能凑活~~~
    xhinking
        9
    xhinking  
       2013-05-31 12:36:50 +08:00
    一眨眼就到4了。。
    PrideChung
        10
    PrideChung  
    OP
       2013-05-31 13:37:24 +08:00
    @xhinking 所以说是现在社区相当火的一个框架,开发十分活跃,基本一年一个大版本。
    RelativeLayout
        11
    RelativeLayout  
       2013-05-31 14:00:01 +08:00   1
    我觉得Laravel是最好的PHP框架。
    run2
        12
    run2  
       2013-05-31 16:43:19 +08:00
    从laravel4 beta3 用回laravel3了-。-
    crny520
        13
    crny520  
       2013-06-07 17:48:46 +08:00
    @PrideChung 安装好像都不行...
    crny520
        14
    crny520  
       2013-06-07 17:55:42 +08:00
    @RelativeLayout 该不会要安装该死的Composer吧?有没有3的包下载,我找了半个都找不到.
    PrideChung
        15
    PrideChung  
    OP
       2013-06-07 18:06:48 +08:00
    @crny520 Laravel4已经完全拥抱Composer了,添加package就跟写Gemfile一样超方便的。新项目不再建议用3了,要是对Laravel4不感兴趣的话,还是趁早换一个框架吧,Laravel3已经不会再有什么大更新的了。
    crny520
        16
    crny520  
       2013-06-07 18:09:19 +08:00
    @PrideChung 怎么我下载的包才38K?
    PrideChung
        17
    PrideChung  
    OP
       2013-06-07 18:36:33 +08:00
    @crny520 因为框架的依赖全都通过Composer来安装,框架本身也可以通过Composer安装。
    haiyang416
        18
    haiyang416  
       2013-06-07 18:48:35 +08:00 via Android
    之前一直用3,但是自从4的代码发出来,读了源码之后就换框架了。
    它连有php原生函数的功能都要自己封装一遍,比如文件操作类,unlink要封装成delete,还有很多多,3的时候就这样,到4了就更变本加厉了。
    虽说它是为了统一操作,但是我还是接受不能啊…
    Feobe
        19
    Feobe  
       2013-06-07 19:12:39 +08:00
    @haiyang416
    我还以为是别名而已,为了代码的语义性、可读性。

    ...封装了,是不是有点走火入魔的味道了- -
    PrideChung
        20
    PrideChung  
    OP
       2013-06-07 21:01:51 +08:00
    @haiyang416 @Feobe

    我越来越感觉Laravel有野心要成为PHP界的Rails,从它非常重视测试这一点可以看出来,虽然不像Cack那样照搬Rails。接纳了在Composer之后在包管理方面也可以跟Gemfile对应了,大概封装越来越重也是必然的了,但愿不会成为另一个Zend就好……
    PrideChung
        21
    PrideChung  
    OP
       2013-06-07 21:05:20 +08:00
    @PrideChung CakePHP,打错字
    crny520
        22
    crny520  
       2013-06-07 22:39:26 +08:00
    @PrideChung Composer在Laravel目录下composer install安装不了...
    PrideChung
        23
    PrideChung  
    OP
       2013-06-07 23:38:57 +08:00
    @crny520 哪用这么复杂,你安装好了composer以后,按官网的guide在命令行里面敲:

    composer create-project laravel/laravel

    然后经过漫长的等待,composer就会把Laravel的核心还有一大堆依赖像什么symfony,doctrine(doctrine?!)都给你装好了。

    我刚才出于对漫长的安装过程的好奇,看了下安装好以后的文件夹大小,101.8M…… Laravel你作大死啊,想成为第二个Zend么,之前的beta明明装好之后才7多M啊!

    好吧,仔细看了一下,有101.3M的体积都被vendor目录占了,vendor目录里面 Laravel自己的Core只有5.8M,剩下体积最大的两个货,一个是doctrine40.3M, 一个是symphony38.9M。

    Laravel你不是有自己的ORM么,把doctrine这货加进来是要闹哪样啊喂,我先上官网看看到底是什么回事。
    Feobe
        24
    Feobe  
       2013-06-08 10:52:45 +08:00
    要是真能一统江湖,或者撑起半边天,对于php框架届泥沙俱下的生态真是个功德

    支持吧
    alexzhou
        25
    alexzhou  
       2013-06-08 11:05:21 +08:00
    在php的框架技术上有什么实质性的突破吗
    PrideChung
        26
    PrideChung  
    OP
       2013-06-08 13:23:25 +08:00   1
    被Laravel4膀大腰圆的体积吓得夜不能寐,做了些研究,发现有个哥们提出了解决方案了。

    https://github.com/barryvdh/laravel-vendor-cleanup

    Laravel在引入依赖的时候,不知道为什么选择了别人的开发分支,里面有大量的文档,测试用例,git提交历史,把这些通通删掉以后,vendor目录瞬间缩到只有8.6M,跟Laravel3比还是大了一点,不过起码是在可接受的范围内。
    kiancyc
        27
    kiancyc  
       2013-06-08 14:12:48 +08:00
    @PrideChung 体积大是因为引入了Symfony。其实composer最大的好处就是你完全可以自定义自己要下载/加载什么包。Doctrine被Symfony加载,但是Laravel自己用的是Eloquent ORM.
    PrideChung
        28
    PrideChung  
    OP
       2013-06-08 14:28:08 +08:00
    @kiancyc Symfony和Doctrine都是被Laravel引入的,并不是写在我自己的composer.json里面。不知道这两组件用在了哪些地方,不过显然不建议你移除它们。还好,其实都是虚胖,按照我上面的方法能把整个框架体积减小到10M以内,压缩后大概是3M。
        29
    summic  
       2013-06-08 14:31:33 +08:00
    我也遇到了下载不下来的问题,上vps下载好打包拿回来

    vendor太大无所谓的,只是依赖而已。
    PrideChung
        30
    PrideChung  
    OP
       2013-06-08 14:52:42 +08:00
    @summic vendor的体积当然有所谓了,很多网站是部署在共享空间上靠FTP上传的,硬盘空间可能只有100M。fluxbb下一个版本打算基于Laravel来开发,你觉得有多少人会想用一个100多M的论坛。
    summic
        31
    summic  
       2013-06-08 14:58:06 +08:00
    @PrideChung

    我out了。好多年不接触共享空间了。
    PrideChung
        32
    PrideChung  
    OP
       2013-06-08 15:56:55 +08:00
    @summic 不是out不out的问题,有些Freelancer给别人开发网站,他们的客户有可能用任何的方式把网站部署到任何可能的环境,不是所有客户都是用Linode的高富帅。
    summic
        33
    summic  
       2013-06-08 21:05:13 +08:00
    @PrideChung 这种情况的话确实不太适合lavarel,一旦对方php版本还低于5.3呢
    metaclass
        34
    metaclass  
       2013-06-08 21:40:23 +08:00
    Python攻城师围观PHP社区垂死挣扎
    allenhsu
        35
    allenhsu  
       2013-06-08 22:09:03 +08:00
    @metaclass 女朋友派来的么
    metaclass
        36
    metaclass  
       2013-06-08 22:43:10 +08:00
    @allenhsu 开玩笑了,不要放心上
    allenhsu
        37
    allenhsu  
       2013-06-08 22:46:38 +08:00
    @metaclass 我也只是引个 Joke
    PrideChung
        38
    PrideChung  
    OP
       2013-06-09 01:18:28 +08:00
    @summic 5.3的问题还好,毕竟5.3都出来好几年了,现在还不支持的主机商肯定也离死不远了,上道的主机商现在都普遍支持5.4了。
    PrideChung
        39
    PrideChung  
    OP
       2013-06-09 23:28:48 +08:00 via iPhone
    @haiyang416 好奇问下,换哪个框架了?
    baocaixiong
        40
    baocaixiong  
       2013-06-11 16:10:37 +08:00
    实在搞不懂。我新手都不知道从哪里看起了。。。。
    PrideChung
        41
    PrideChung  
    OP
       2013-06-11 16:39:28 +08:00
    @baocaixiong 从官方的 Quick Start 看起 http://laravel.com/docs/quick
    tenking
        42
    tenking  
       2013-06-12 21:31:33 +08:00   1
    aravel4发布了,偶有时间就赶紧学习了下,学习过程中把以前laravel3的demo全部迁移到了laravel4,内容涵盖laravel4中的分页,文件上传,一对一,一对多,多对多等知识点,总体来说laravel4还是值得学习的

    昨天把阿里云服务器升级到了Ubuntu12,顺便就把demo程序放上来了

    围观地址:http://laravel4.chedushi.com/

    源码出来供大家吐槽!

    https://github.com/cecoo/laravel4demo
    Htom
        43
    Htom  
       2013-06-12 21:55:01 +08:00
    我爱laravel
    coffeego
        44
    coffeego  
       2013-06-13 21:38:59 +08:00
    其实觉得thinkphp不错
    Hyperion
        45
    Hyperion  
       2013-06-13 21:46:49 +08:00
    观望... 感觉我不大会选择这种把事情变得好复杂的框架... 能用原生函数我绝对不会选择二手货...

    吐槽一下, quick页的代码高亮有问题啊, 好感度-10000.
    PrideChung
        46
    PrideChung  
    OP
       2013-06-13 23:37:31 +08:00
    @Hyperion

    你还是可以用CodeIgniter的,API稳定,文档完备,除了Laravel我只推荐CI。
    Quick Start的高亮有啥问题,我这看着好好的。
    Hyperion
        47
    Hyperion  
       2013-06-14 00:25:32 +08:00
    @PrideChung CI专业户表示赞同...

    你仔细看, </p>木有高亮...
    ericsion
        48
    ericsion  
       2013-06-14 09:48:53 +08:00
    laravel很不错 从出来就关注了 国内的开发群从20几个人到现在的200多个 说明大家对他的关注度越来越高了 喜欢它的优雅
    另:slim也不错 slim+redbeans
    solu
        49
    solu  
       2013-06-17 19:03:40 +08:00
    这个最近曝光率很高呀!
    minowu
        50
    minowu  
       2013-06-18 02:25:49 +08:00
    Laravel把Controller,Model之类的类放置于全局命名空间下,这点很不爽,不能像symfony一样分bundle模块来开发,而且去改他的命名空间,还发现在Laravel框架运行后,改写了Composer的autoload加载方式。
    coffeego
        51
    coffeego  
       2013-06-28 08:45:13 +08:00
    @tenking 放在github下的代码能否直接拿下来跑?在公司不能通过composer上外网安装,都知道Laravel要下载一堆包,所以想有个现成的项目,能在它基础上开发,这样就不用下载东东了。
    PrideChung
        52
    PrideChung  
    OP
       2013-06-28 12:47:08 +08:00
    @coffeego 不行,github上Laravel的repo是不带任何依赖的,需要通过composer安装。你可以先在有网络的地方把依赖的东西下好了,再把整个文件夹打包带走。
    rezus
        53
    rezus  
       2013-06-28 13:33:13 +08:00
    请问头像是哪个动漫里面的人物.
    PrideChung
        54
    PrideChung  
    OP
       2013-06-28 13:36:54 +08:00
    @rezus 中二病也要谈恋爱 - 小鸟游六花 CV:内田真礼

    严重OT了
    allengaller
        55
    allengaller  
       2013-07-01 14:58:40 +08:00
    中毒了,搞起。
    KiseXu
        56
    KiseXu  
       2013-07-01 15:35:30 +08:00
    Composer用着很爽,特别是存在互相依赖关系时。我是不是out了
    tenking
        57
    tenking  
       2013-07-02 19:52:20 +08:00
    @coffeego
    可以直接跑的,vendor的源码我也放上去啦
    kiancyc
        58
    kiancyc  
       2013-07-03 17:33:34 +08:00
    再一次:
    “But as noted by Taylor, disk size is getting less important and you only include the files you need.”
    --http://forums.laravel.io/viewtopic.php?id=8175

    只是下载的包比较多,要不要加载(甚至下载)都是你可以控制的,这就是整个框架都用composer下载的好处。
    kiancyc
        59
    kiancyc  
       2013-07-03 17:36:14 +08:00
    kohana 2,378 2.1% Ful PHP FPM ngx My Raw Rea 0
    silex 2,364 2.1% Mcr PHP FPM ngx My Raw Rea 0
    aspnet-mvc 1,710 1.5% Ful C# Net ngx Mo Raw Rea 0
    laravel 1,639 1.4% Ful PHP FPM ngx My Raw Rea 0
    fuel 1,410 1.2% Mcr PHP FPM ngx My Raw Rea 0
    lithium 1,410 1.2% Ful PHP FPM ngx My Ful Rea 0
    phreeze 1,410 1.2% Mcr PHP FPM ngx My Mcr Rea 0
    cake 1,287 1.1% Ful PHP FPM ngx My Ful Rea 0
    aspnet-mvc 1,157 1.0% Ful C# Net ngx My Ful Rea 0
    aspnet-mvc 1,130 1.0% Ful C# Net ngx Pg Raw Rea 0
    silex 1,002 0.9% Mcr PHP FPM ngx My Ful Rea 0
    symfony2 879 0.8% Ful PHP FPM ngx My Raw Rea 0
    aspnet-mvc 871 0.8% Ful C# Net ngx Pg Ful Rea 0
    sinatra 561 0.5% Mcr Rby JRb Res My Ful Rea 0
    aspnet-mvc 119 0.1% Ful C# Net ngx My Raw Rea 9
    servicestack 51 0.0% Plt C# Net IIS My Raw Rea 8

    --http://www.techempower.com/benchmarks/
    运行速度还是比Symfony快的
    kiancyc
        60
    kiancyc  
       2013-07-03 17:40:03 +08:00
    Using "composer install --prefer-dist" cuts the size to about 21 MB.

    You can set that option by adding 'config' in your app/composer.json:

    "scripts": {
    "post-update-cmd": "php artisan optimize"
    },
    "config": {
    "preferred-install": "dist"
    },
    "minimum-stability": "dev"
    PrideChung
        61
    PrideChung  
    OP
       2013-07-03 19:18:41 +08:00
    @kiancyc 作者Tylor一直坚称L4的速度比L3还有CodeIgniter都快,但是貌似其他人测出来都是慢了不少,不知道他自己还做了什么优化没。
    zhouitpro
        62
    zhouitpro  
       2013-07-05 10:46:41 +08:00
    这个框架我第一次玩玩就惊讶了。这么简单就搭建起来一个后台的和前台直接的路由? 哇太强大了很喜欢
    cai314494687
        63
    cai314494687  
       2013-07-05 15:11:44 +08:00
    跟Yii比起来呢?Yii2 也出来了,也是支持Composer的,不过目前是测试版。
    PrideChung
        64
    PrideChung  
    OP
       2013-07-05 15:47:45 +08:00
    @cai314494687 没用过Yii,不太清楚。
    ruchee
        65
    ruchee  
       2013-07-05 18:39:42 +08:00
    现在新出的框架大都用上Composer了,但不管怎么折腾,总感觉使用Composer的祖师爷Symfony更靠谱一些
    PrideChung
        66
    PrideChung  
    OP
       2013-07-05 20:23:17 +08:00
    @ruchee 感觉Symfony现在成了PHP社区里面的基层建筑,很多框架或者CMS都拿它的代码来用,Laravel也不例外。
    cngump
        67
    cngump  
       2013-08-18 19:39:28 +08:00
    最近试了一下Laravel 4,架构各方面还是不错的。 竟然看到 @pridechung 老贴。
    PrideChung
        68
    PrideChung  
    OP
       2013-08-18 19:53:39 +08:00
    @cngump 说来惭愧,到现在都没真正实践过Laravel,最近在玩Ruby的另一个Web框架Padrino。
    fuckdingding
        69
    fuckdingding  
       2013-09-16 02:54:06 +08:00
    垃圾框架,跟SF2比真是个垃圾,从symfony1.1用到2.3,无数次帮助了我实现了项目,而且symfony2是一种哲学,laravel4基于他的component和bundle乱搞一通就他妈拿出来发布说自己的框架,一傻逼而已,跟zend framework2一样,一群拿来主义者,我想如果sf2是一个收费框架,也有很多人买的,什么laravel,连bundle都这么少,垃圾
    yakczh
        70
    yakczh  
       2014-04-17 09:47:34 +08:00
    有lavarel做的网站吗
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5172 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 36ms UTC 09:08 PVG 17:08 LAX 01:08 JFK 04:08
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86