franktz
V2EX  ›  PHP

php7.0 来了!大家谈谈主流 php 框架的使用感受吧!

  •  
  •   franktz · Dec 14, 2015 · 16699 views
    This topic created in 3977 days ago, the information mentioned may be changed or developed.

    php7.0 来了,主流的 php 框架是否会进行一次洗牌?

    目前大家都在用哪些 php 框架呢?大家为什么选择这个框架、有什么优缺点吗?

    请大家随意畅谈自己在使用 php 框架中的一些经验,谢谢!

    纯技术讨论帖,严禁水军!!!

    44 replies  •  2017-01-25 00:34:22 +08:00
    BOYPT
    BOYPT
    Dec 14, 2015
    1
    我在小项目里面用 slim, 没试过 php7 ,目测会挂。
    crayygy
    crayygy
    Dec 14, 2015
    2
    没学过 PHP...不知道 PHP7 入门怎么样😂
    mytsing520
    mytsing520
    PRO
    Dec 14, 2015
    3
    PHP 7.0 ,不向后兼容的变更: http://php.net/manual/zh/migration70.incompatible.php
    PHP 7.0 ,新特性: http://php.net/manual/zh/migration70.new-features.php
    移除的拓展: ereg 、 mssql 、 mysql 、 sybase_ct
    移除的外部通讯接口: aolserver 、 apache 、 apache_hooks 、 apache2filter 、 caudium 、 continuity 、 ISAPI 、 milter 、 NSAPI 、 phttpd 、 pi3web 、 roxen 、 thttpd 、 tux 、 webjames
    其他特性参考官方网站说明。
    raincious
    raincious
    Dec 14, 2015
    4
    我自己的一个项目+框架升级 PHP 7.0 毫无压力,只是 Memcached 扩展还没准备好,需要从源代码编译好安装。

    如果要做升级的话,仔细看看不兼容的部分,以免有坑:
    http://php.net/manual/en/migration70.incompatible.php

    如果是用的第三方框架,最好等对方升级好框架之后再开始评估。
    Pastsong
    Pastsong
    Dec 14, 2015
    5
    @BOYPT Slim3 作者说他就是在 PHP7 里面开发的

    反正我自己的项目都感觉升级挺无痛的
    AcmeSa
    AcmeSa
    Dec 14, 2015
    6
    移除那么些扩展是什么意思?不让人用了?
    BOYPT
    BOYPT
    Dec 14, 2015
    7
    @Pastsong 是么。。。最近开了个新项目,从 slim 3.0.0RC2 开始用,发现好几个以前的框架糖果没了…完全当成新框架用了……不过感觉跟 node.js express 啊, python bottle 那些越来越像了。
    pynix
    pynix
    Dec 14, 2015
    8
    @AcmeSa 没人用吧
    BOYPT
    BOYPT
    Dec 14, 2015
    9
    @Pastsong 没了$resp->redirect() $resp->halt 感觉好痛
    iyaozhen
    iyaozhen
    Dec 14, 2015
    10
    @AcmeSa 不是,还是可以用,需要自行编译。那些扩展也有安全风险
    usapla
    usapla
    Dec 14, 2015❤️3
    11
    TP 框架,我以前一直觉得 TP 是垃圾框架,然后工作后,天天用他,而且为了兼容老项目,还在使用 Tp2.1 ,随着使用的时间,我逐渐的感觉到,原来是真垃圾啊啊啊啊啊啊
    kokutou
    kokutou
    Dec 14, 2015❤️1
    12
    @usapla 以为会反转。。
    huigeer
    huigeer
    Dec 14, 2015
    13
    坐等 laravel 框架更新
    herozzm
    herozzm
    Dec 14, 2015❤️1
    14
    大点的项目 phalcon ,小点的 ci ,看了楼上对 tp 的说法,暗自庆幸当年没跳 tp 的坑,本来当初准备学 laravel 的,但安装 laravel 就把我卡住了,各种工具套装一起上,感觉挺麻烦的
    phithon
    phithon
    Dec 14, 2015
    15
    看来用 slim 的挺多啊,我也正在用 slim3 做开发
    mcfog
    mcfog
    Dec 14, 2015❤️1
    16
    去年的话我会推荐 slim ,但现在情况发生了变化,与 php7 发布无关的变化

    我坚信未来一定是 PSR-7 的。参照 node 的话, PSR-7 约等于 node 自带的 request/response 接口,现在它的具体实现以及 connect/express 库虚位以待就等社区自己生长了

    slim3 是 psr-7 的,但还差一点味道,不够模块化
    zend-diactoros+zend-stratigility 颇具具体实现 & connect 的风范,但完全照搬 connect 结果如何有待观察

    至于能像 express 那样高完成度的,兼顾扩展性、模块化和快速上手的,目前还没看到

    顺便,我觉得以后两种不同的 phper 一定会越来越明显: php5.2er VS modern phper
    system
    system
    Dec 14, 2015
    17
    @usapla 同感,而且告诉作者这个有 BUG ,作者说很久没更新 忘记了。一个人的框架。
    BeatenMo
    BeatenMo
    Dec 14, 2015
    18
    yii2 路过
    表示目前 php7 跑 yii2 没啥问题~
    mahone3297
    mahone3297
    Dec 14, 2015
    19
    @mcfog
    》顺便,我觉得以后两种不同的 phper 一定会越来越明显: php5.2er VS modern phper
    这句话,有点意思。。。我也相信了。。。
    zonghua
    zonghua
    Dec 14, 2015
    20
    没有人用 Yaf 吗?鸟哥会全力支持吧。
    raincious
    raincious
    Dec 14, 2015
    21
    @mcfog

    > 我坚信未来一定是 PSR-7 的

    好奇为什么。仅仅只是封装下接口而已,没那么革命性吧?除非有朝一日用 PHP 就可以编写能在生产环境用的 HTTP Server ,但是就目前而言貌还有一堆问题需要解决。
    cevincheung
    cevincheung
    Dec 14, 2015
    22
    windows 下的 binary 有问题,加载不进来 mb_string 扩展, PDO 扩展
    imNull
    imNull
    Dec 14, 2015 via Android
    23
    借楼问一下大家使用 slim 写 rest api 时,用哪种方式来验证请求的合法性?
    @BOYPT
    @Pastsong
    @phithon
    @mcfog
    movtoy
    movtoy
    Dec 14, 2015
    24
    @mcfog 去年推荐 slim ,现在你推荐啥?刚看了一下 slim 感觉比 laravel 清新好多,各个参数表示非常直白,一眼就看出什么意思。
    hantsy
    hantsy
    Dec 14, 2015
    25
    PSR 模仿 JSR 定制一系列通用规范,包括最基本的格式化, LOG , Class AutoLoad ,到最新的 MiddleWare 可交换等,为未来 PHP 开发可交换组件提供基础。 Symfony 对 PSR 影响深远,目前很多框架,产品,组件都是基于 Symfony 核心(即使不使用 Symfony 整个框架), laravel , Drupal 都是使用 Symfony Kernel 。

    Symfony 是真正推动 PHP 工业化进程的框架。

    ZF 3 也声明完全支持 PSR 7 ,目前放出的 expressive 中很多组件支持最新 PSR , 也是可以使用第三代替,给开发人员更多选择,而不像 ZF2 那样一窝粥全包了。
    edsgerlin
    edsgerlin
    Dec 14, 2015 via Android
    26
    @herozzm Phalcon 真神器也!就是用的人感觉太少。 Zend Framework 2 除了和 ORM 还有 Template Engine 的集成不太方便没啥黑点,也是没人用。
    scourgen
    scourgen
    Dec 15, 2015
    27
    Symfony 用了 5~6 年了,从 1 用到 2 ,应该还会继续用下去。
    flydogs
    flydogs
    Dec 15, 2015
    28
    Yii2 兼容 php7
    速度提升很大
    http://simpleforum.org
    flydogs
    flydogs
    Dec 15, 2015
    29
    @BeatenMo 深有同感。 Yii2 提前兼容了。
    BOYPT
    BOYPT
    Dec 15, 2015
    30
    @imNull 那要看你的 api 在哪里使用吧,配合 web 使用的,就验证 session ;独立使用的,就参考 twitter 、 oauth 、微信、微博等,无非都是授权限制时间的 access token ; 只是需要类似 rpc 那样简单调用的,每次调用都加密钥就好了。
    getive
    getive
    Dec 15, 2015
    31
    我用 TP ,现在稳定版是 3.2.3 ,前几天放出 5.0 beta 版了。我觉得是最好用 PHP 框架。
    mclxly
    mclxly
    Dec 15, 2015
    32
    用过 Yii 1+ 和 Laravel 5.1 。
    Laravel 没有生成 CRUD 代码框架的工具,唯一遗憾,其它都好用。
    mcfog
    mcfog
    Dec 15, 2015❤️1
    33
    @raincious

    promise 也就是个异步的接口而已,但大家都遵守, promise 就能成为事实标准。 express/connect 中间件也就是个中间件的接口而已,但大家都遵守, express 就能成为事实标准。

    PSR7 也有同样的潜力,让所有的框架,组件,中间件都遵守同一种接口,当然革命性

    @imNull

    不怕笑话,我还从来没写过 rest 接口,主要是觉得驾驭不了 rest 原则,不如直接用最朴素的 jsonrpc

    @movtoy

    看菜下饭吧, PSR7 需要一点时间让社区慢慢接受,现在还没形成规模效应之前,还是该干啥干啥。 slim3 也是个不错的选择。 之前写的挑选框架的个人方法 => http://inside.mcfog.wang/2015/09/ichizon-d/
    Owenjia
    Owenjia
    Dec 15, 2015 via Android
    34
    只用过 lumen ,感觉 artisan 要自己完善下才好用,其他都还好。
    php230
    php230
    Dec 15, 2015
    35
    YAF
    initialdp
    initialdp
    Dec 15, 2015
    36
    没有人用 CI 么?
    evakiss
    evakiss
    Dec 15, 2015 via Android
    37
    先打断一下吧,楼上一堆人网站每天几个 ip ,就大谈,哎呀 tp 垃圾臃肿,国产没逼格, phalcon 和 yaf 才是性能彪悍之王, Laravel 啊,艺术家的杰作啊! ZF 啊,垃圾中的轰炸机!各位如果网站如果没有达到六位数的 daily ip 之前, php7 还是 PHP6 还是 5 还是 4 跟你一点关系都没有,用 tp zf 还是用电话 01 键写代码跟你也一点都没有, PHP7 抛不抛弃 MySQLli 跟你也一点关系都没有,老老实实用 txt 做数据库吧,够你们的日 ip 了,不多说了,我要去给别人解释为什么玛莎拉蒂比兰博基尼好了,掰掰
    imNull
    imNull
    Dec 15, 2015
    38
    @BOYPT @mcfog 感谢
    imNull
    imNull
    Dec 15, 2015
    39
    @initialdp 再用,自己写一些小东西(当时想在 CI 和 TP 两个中间选一个,好多人喷 TP 。。。
    ben548
    ben548
    Dec 16, 2015
    40
    slim 很小,开箱即用,文档一天就能看完,只是好像没有完整的 MVC 结构?一般只是用来做 restful 接口开发吧?
    thenbsp
    thenbsp
    Dec 16, 2015
    41
    PHP 框架里的带头大哥 Symfony ,最近发布了 3.0 ,用不用不说,但一定得看。
    yhylord
    yhylord
    Dec 16, 2015 via Android
    42
    @evakiss 说得好,日 IP 没有六位数就不要当一个现代人了,干脆滚回去茹毛饮血的时代吧,这个站根本不能入您法眼
    thenbsp
    thenbsp
    Mar 17, 2016❤️1
    43
    changwei
    changwei
    Jan 25, 2017
    44
    为什么都说用 slim3 得人比较多啊?难道这里用 lumen 的人很少嘛?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   5041 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 134ms · UTC 08:55 · PVG 16:55 · LAX 00:55 · JFK 03:55
    ♥ Do have faith in what you're doing.