• 请不要在回答技术问题时复制粘贴 AI 生成的内容
kisshere
V2EX  ›  程序员

大家有没有觉得, thinkPHP 是世界上最臃肿难用的框架?

  •  
  •   kisshere · Oct 3, 2016 · 17412 views
    This topic created in 3683 days ago, the information mentioned may be changed or developed.
    新版本的 thinkPHP 不知道,老版本的 TP 框架, ABCDEFG 的函数命名方法,各种臃肿的配置,目前找了半天哪里开 debug 都不知道,因为他把本来最简单的 php 弄成一个庞大的积木工程,而你对这个积木工程的内部不了解,哪里出错,哪里优化都不清楚, php 框架的宗旨应该是一种清晰的脉络,一有异常马上知道哪个环节出错了、哪个环节该优化了,顺藤摸瓜找到症结所在,达到整个服务器如庖丁解牛般了然于心。因此很多人都说自己写的框架才是世界上最好的框架,然而 TP 完全与这一理念背道而驰, php 本来就是一种框架式、模板式的语言,简单易用的 php 到 TP 这儿却变成各种新概念,异常臃肿。个人觉得一种最简单的 php 框架就这么几个文件:
    1.index.php 入口文件,包含 functions.php,config.php,baseController,MySQL.class.php
    2.各种 Controller 继承 baseController ,当然你要加一个 baseModel.php 也可以,项目足够小, MVC 可以直接改成 MC 模式
    一个框架就完成了,需要 TP 这么画蛇添足 ban 复杂吗?
    63 replies  •  2017-02-10 14:50:14 +08:00
    forwind
    forwind
    Oct 3, 2016
    1
    是
    zhujinliang
    zhujinliang
    Oct 3, 2016 via iPhone
    2
    同意楼上的观点
    int64ago
    int64ago
    Oct 3, 2016 via Android
    3
    对
    tabris17
    tabris17
    Oct 3, 2016
    4
    没错
    David6516
    David6516
    Oct 3, 2016
    5
    yii 框架你值得拥有~
    haibocui
    haibocui
    Oct 3, 2016 via Android
    6
    精辟
    bramblex
    bramblex
    Oct 3, 2016 via Android
    7
    我觉得楼上都已经懒得吐槽楼主了
    testisitok
    testisitok
    Oct 3, 2016 via Android
    8
    正确(手动滑稽)
    bugmenein
    bugmenein
    Oct 3, 2016❤️11
    9
    今天终于把 phpstorm 这个祸害给卸载了,呼~松口气~

    kisshere · 27 天前
    springz
    springz
    Oct 3, 2016
    10
    精辟,好吧,黑 thinkPHP 是政治正确,这个我不说什么。但是剩下的,我猜题主没用使用过 php 5.3 以后的版本,闭包,命名空间, interface 等等不了解。更没有使用过 laravel , symfony , yii 等。我刚接触 php 的时候也有这种想法。当成脚本去写。但是这是一个工程,不是一个玩具。
    mitoop
    mitoop
    Oct 3, 2016
    11
    你这喷法又喷出了新高度,新姿势。按照你的逻辑, Laravel 和 ROR 可以死了。
    springz
    springz
    Oct 3, 2016
    12
    大家都懒的吐槽,当个坏银。
    springz
    springz
    Oct 3, 2016
    13
    再猜一下,楼主应该只会 php 或者 js 一类的,学学 java 之类的吧,借鉴一些思想也是好的。
    Smilecc
    Smilecc
    Oct 3, 2016
    14
    我猜楼主可能是接了哪个前同事的坑 不爽了来吐槽一发
    cnqncom
    cnqncom
    Oct 3, 2016
    15
    存在就是合理的,为什么 TP 从 1 到 5 的升级?如果没有人去使用,我想官方也不会去升级。
    开发为了什么?
    搞到最后还是开发出来的项目要去赚钱。 TP 上手很快,文档都是中文的,所以它迎合了很多项目的需求。做出来的项目功能未必不如 YII 等国外框架
    luziafy
    luziafy
    Oct 3, 2016
    16
    半天找不到 debug 开关,转行吧...

    而且真没发现 TP 有新概念...

    关于臃肿...
    你完整做过项目吗?

    一般框架会需要一个 Route.php
    后来发现要处理异常,于是就有了 Exception.php
    后来觉得没有自动加载真是太傻了,新建了个 Loader.php
    php 项目怎么可能没有用户输入?于是 Response.php 出现了
    用户输入需要验证,又加了个 Validate.php
    调试中发现没有日志不行, Log.php 正在路上
    ...

    回头一看,这么臃肿的框架,和 TP 有什么区别,摔
    Smilecc
    Smilecc
    Oct 3, 2016
    17
    虽然不说 TP 有好或者多烂,但工具的种类很多,有轻量级的,有重量级的。
    每一种技术,发明这项技术的人都有他的初衷,你不认同只是你俩想法不能契合,一种技术有啥用,不想用就用别的呗。
    springz
    springz
    Oct 3, 2016
    18
    Smilecc
    Smilecc
    Oct 3, 2016
    19
    @Smilecc
    - 一种技术有啥用
    + 喷一种技术有啥用
    cnqncom
    cnqncom
    Oct 3, 2016
    20
    当初用 DZ 做论坛的时候,很多搞技术的圈内人很看不起 DZ ;不过我更看重的是安装简单,插件很多,维护方便,有什么问题就去官方论坛发帖。
    后来,我把这个基于 DZ 的地方网站运营的很不错,也从上海的公司辞职回家全职搞。 2014 年又开始做微信公众号,萌宝投票吸了大量的粉丝,搞的有声有色。
    我也是做技术出身的,搞过 moodlen\drupal 等等,后来感觉还是 dedecms 、 discuz 、 thinkphp 来的快。
    如今当初那些看不惯 DZ 的同事,每天晚上还是在上海加班一个一个项目暗无天日的做着。聊天的时候他们现在蛮羡慕我现在自由的生活,不过估计他们在心底还是看不惯 DZ 等这些国产程序。有点孔乙己的脾气......
    jessynt
    jessynt
    Oct 3, 2016❤️12
    21
    kaneg
    kaneg
    Oct 3, 2016 via iPhone
    22
    这个项目把做产品当成做玩具,每次升级都是过河拆桥,几乎不考虑老版本的兼容性。
    iyaozhen
    iyaozhen
    Oct 3, 2016 via Android
    23
    各种 Controller 继承 baseController ,当然你要加一个 baseModel.php 也可以,项目足够小, MVC 可以直接改成 MC 模式。
    ——没明白这里有什么不好的地方?
    kisshere
    kisshere
    OP
    Oct 3, 2016
    24
    @luziafy 找了半天 debug 没找到就转行。。。现在我开发一个框架,我要你马上给我说出我自定义的一个函数具体什么含义该怎么使用,找不到就鄙视你,你觉得合理么
    bramblex
    bramblex
    Oct 3, 2016 via Android
    25
    @kisshere 造个框架多简单,高中生都能做的事就别拿来炫耀
    shoaly
    shoaly
    Oct 3, 2016
    26
    @kisshere 还是不一样你写的 很可能找不到, 但是 TP 有那么多文档可以查, google 百度也应该可以搜到答案, 如果找不到 , 倒是你的问题
    kisshere
    kisshere
    OP
    Oct 3, 2016
    27
    @shoaly 正如楼上所说, TP 每次过河拆桥,造个新项目就抛弃老项目,叫我咋查老版本的 TP ?
    likai
    likai
    Oct 3, 2016
    28
    @kisshere
    对于一个不熟悉的框架.难道不是第一时间看官方文档么?
    tp5 没用过不清楚,tp3 你确定你看过文档?或者说看过 index.php 这个文件的源代码?
    Perry
    Perry
    Oct 3, 2016
    29
    /t/217042

    "也不能这么说, thinkPHP 因为受众量多而且是中文,所以逼格不够高,但是中国用 thinkPHP 的估计和 laravel 不相上下吧, thinkPHP 是我的启蒙框架,文档齐全,是入门的好框架"

    thinkPHP :我真是白启蒙这娃了,还反咬我
    Chyroc
    Chyroc
    Oct 3, 2016
    30
    tp 的 debug 不知道在哪,真的说不过去=。=
    nikoukou
    nikoukou
    Oct 3, 2016
    31
    掉你马屁的鱼,滚蛋。
    Erskine
    Erskine
    Oct 3, 2016 via Android
    32
    新手路过,表示什么都不懂,还停留在语言层面
    frozenshadow
    frozenshadow
    Oct 3, 2016
    33
    @Perry
    @bugmenein
    我只想说:干的漂亮!!
    Felldeadbird
    Felldeadbird
    Oct 3, 2016 via iPhone
    34
    日常黑。吐槽之前,请问楼主有没有得出手的框架?
    Pengg
    Pengg
    Oct 3, 2016 via iPhone
    35
    debug 的配置都找不到,就别急着喷了,
    (另: thinkPHP -> ThinkPHP )
    t0byxdd
    t0byxdd
    Oct 3, 2016
    36
    tp 臃肿 哈哈哈哈
    sunsh217
    sunsh217
    Oct 3, 2016
    37
    是的,确实臃肿,所以你应该试试 codeigniter.
    branchzero
    branchzero
    Oct 3, 2016
    38
    看来 LZ 没用过 Laravel 之类的框架。。。
    要轻框架有 Slim 之类的,如果只是很小的项目用重框架不是自己作么。。。
    GG668v26Fd55CP5W
    GG668v26Fd55CP5W
    Oct 3, 2016 via iPhone
    39
    用过 tp2.0 ,总的感觉是很多地方把简单问题复杂化,文档夸夸其谈,一大堆不说重点,现在不知道有没有好点。
    ovear
    ovear
    Oct 3, 2016
    40
    恩。。。 TP 的 hello world 的 stack trace 只有几行,至少没有某 L 开头最优雅框架,一个 hello world 能弄出几十行 stack trace
    还有 20 来 M 的 hello world 。。 CI 和 TP 相比真心轻了不少

    我反倒觉得 Thinkphp 的脉络清晰不少,至少没有什么 Facde Container 之类的新概念。另外 TP 的代码注释也写的不错的。。实在看不懂在框架里找到对应的方法扫一眼就会了。
    luziafy
    luziafy
    Oct 3, 2016
    41
    @kisshere 没有文档吗?没有的话你还是别开发了,直接鄙视我就 OK 。有的话,文档里搜索一下 debug\调试\DEBUG 能搜到吗?搜不到?别写文档了,直接鄙视我就 OK
    sherlocktheplant
    sherlocktheplant
    Oct 3, 2016
    42
    Java EE 笑而不语
    shlabc
    shlabc
    Oct 3, 2016
    43
    推荐 YII2 ,既强大、速度也不慢,适合团队开发,个人用也没问题
    TaMud
    TaMud
    Oct 3, 2016
    44
    @sherlocktheplant
    Java EE 笑而不语
    baozijun
    baozijun
    Oct 3, 2016
    45
    @sherlocktheplant 然而现在都是用 spring-boot 开发 Microservice 了,个人开发必备。
    Tyanboot
    Tyanboot
    Oct 3, 2016 via Android
    46
    ???你说 tp 臃肿??你用过 laravel 没?让你看看什么才叫臃肿= =
    iminto
    iminto
    Oct 3, 2016
    47
    TP 不是太复杂,是不够“复杂”
    luojing
    luojing
    Oct 3, 2016 via Android
    48
    我觉得框架最大的价值是用过这个框架的人能快去看懂接手别人做的系统,另外能在安全性方面少一些担心。
    xuhaoyangx
    xuhaoyangx
    Oct 3, 2016
    49
    暴露水平的一段话
    penjianfeng
    penjianfeng
    Oct 3, 2016
    50
    当初玩 PHP 的时候受不了 TP 这个奇葩的 ABCD 函数名以及臃肿,然后自己写了一个..楼主可以参考下
    scusjs
    scusjs
    Oct 3, 2016
    51
    哈哈哈哈哈哈哈,楼主看看还是看看文档吧
    techmoe
    techmoe
    Oct 3, 2016
    52
    我也烦以前 tp3 那个时候的各种单字母助手函数,但是**TP5 已经取消所有单字母助手函数了**
    tp3 和 tp5 本质上都是两个东西,如果认为后者只是新版本的前者就错了,有点类似于 py2 和 py3 的关系吧
    jayin
    jayin
    Oct 3, 2016 via iPhone
    53
    月经贴
    mactaew
    mactaew
    Oct 3, 2016
    54
    @sunsh217 不能同意更多,关于 CI 。简单到看 Laravel 的文档看到脑袋疼。可能因为我只是业余拍黄片的。另外请教各位大神,相比 Laravel ,能不能说 CI 的工程化程度比较低?
    peneazy
    peneazy
    Oct 3, 2016 via Android
    56
    想学点 PHP
    special
    special
    Oct 3, 2016
    57
    大家有没有觉得, PHP 是世界上最臃肿难用的语言?
    normalcoder
    normalcoder
    Oct 4, 2016
    58
    @falcon05 2.0 好多年了。 3.2 系和 5.0 系比较好用。可以淘淘水
    byuc
    byuc
    Oct 4, 2016
    59
    是呀,又复杂又臃肿超级难用。建议 LZ 用下 spring 。
    EthanLiao
    EthanLiao
    Oct 4, 2016 via iPhone
    60
    GoLaravel!
    pyufftj
    pyufftj
    Oct 4, 2016
    61
    @bugmenein 楼主竟说我大 phpstorm 是祸害。无语了,这是 php 神器好吗
    dphdjy
    dphdjy
    Oct 4, 2016 via Android
    62
    参照学习成本,薪酬再来讨论这个问题
    hetal
    hetal
    Feb 10, 2017
    63
    slightphp 适合楼主
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1306 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 227ms · UTC 20:00 · PVG 04:00 · LAX 12:00 · JFK 15:00
    ♥ Do have faith in what you're doing.