热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

PHP的哪个MVC框架值得推荐?

PHP的哪个MVC框架值得推荐?:回复内容:!---------------createdat2014-08-23---------------二话不说先来一个Github上PHP

回复内容:

!--------------- created at 2014-08-23 ---------------
二话不说先来一个 Github 上 PHP 开源项目的排名 Search · stars:>0 · GitHub , 好有个概念.

大家的回答都比较老了, 现在是 2014 年 8 月下旬, PHP 最近这几年还是发生了很多变化, 尤其是 Laravel 的出现, 让很多已经开始放弃 PHP 的人又从新回到 PHP 的怀抱.

离开 PHP 是因为觉得社区就是一盘散沙, 大家各种为战, 当我想学个框架, 来提高生产效率的时候, 上 Google 一搜, 出来的就是
  • 50个你必须了解的 PHP 框架>
  • <10个最有名的 PHP 框架>....
真的很吓人, 这么多的框架, 我无从入手.

最后我下定决心, 把每一个框架都学习一遍, 真正在学习的时候, 头又大了, 每一个框架都有不同的代码规范, 不同的架构, 不同 "功能一样调用方式不一样的函数方法" , 可以这么说
每一个框架都在发明属于自己的语言
在学到第五个框架的时候, 我就决定放弃了, 因为, 我觉得, 我虽然年轻, 但是不至于时间如此廉价的浪费掉.

后来一直听说 Ruby 社区有一个叫 Ruby on Rails 的 Web 框架, 是全世界最好的框架, 为了用上最好的框架我开始学习 Ruby 直到接触 Rails, 还记得第一次用 Rails 写 Demo App 的时候, 热泪盈眶呀, 多么好的设计, 并且最重要的, Rails 的社区是如此理智, 大家喊得口号是
  • Convention over configuration;
  • DRY - Don't Repeat You;
  • KISS - Keep it simple and stupid;
  • Don't reinventing the wheel;
  • Optimized for programmer happiness and sustainable productivity
多么智慧, 多么聪明, 又是多么简单的一些想法, 我疯狂的爱上了 Rails.

2012 年末, 无意间在 Tuts+ 网站上看到 Jeffrey Way 的一套 Laravel 3 Essentials ( 注意: Laravel 现在已经是 Laravel 4 了, 这套课程已经 out dated 了 ) 课程, 看完以后对 Laravel 印象深刻, 从那会就一直留意 Laravel 的发展.

2013 年 6 月份, Laravel 4 发布, 集成了 Composer, 框架的可扩展性极高, 还有 100% full testing coverage.

关于 Laravel 4 的好, 我在这个问题里面已经讲了 最好的 PHP 框架是什么?为什么? , 就不复制过来了.

Laravel China:
Laravel China is ready Laravel 中文文档 , 欢迎发起 issue 提交纰漏 和建议 --> Laravel China · GitHub

PHPHub:
最后对 PHP & Laravel 的爱好者喊一句, 我抽空弄了个社区, 欢迎加入一起讨论技术, 一起成长.

PHPhub - PHP & Laravel的中文社区 一个干净, 纯粹的, 积极向上的 PHP 中文社区
网站是使用 Laravel4 编写的, 代码基于 MIT Licence 开源 summerblue/phphub · GitHub , 欢迎大家贡献代码.
逛知乎看到这个问题,想起了多年前的我,过来插句嘴

不聊谁优谁劣,只是谈谈用过的几个框架的感受:

1. ThinkPHP 文档全中文,易上手,对于配置环境没什么要求。当年上学的时候结合sae做个小站上个活动页,很快搞定。可想加点扩展功能的时候就很懵,一是百度不到答案,二是配置起来比较麻烦。

2. Yaf 亚一程鸟哥的作品,据说是世界上最快的php框架,不少大公司的项目都是在此基础上再开发, 用C写的扩展,安装的时候得编译,有点麻烦,需要自己造很多轮子。

3. Laravel 这两年非常火,内置的用户权限和blade模板用起来很方便。结合composer能把你所有想写但不会写或者懒得写的功能都一健怼进来,但在没有国内镜像的时候每次composer install/update都像是在走钢丝,生产环境分分钟要爆炸。文档有中文有英文,遇到问题能从stackoverflow上找到不少答案。

跳出来说,不纠结于使用哪种框架,落地到具体的业务场景,有一套自己最熟悉的开发工具才是最实在的事情。

同样都是菜刀,有的人用来杀猪,有的用来雕花。

况且你大部分时间不是在写代码,而是在改需求。 Kohana(kohanaframework.org/)是我最喜欢的框架,个人从中学习了很多,它的文件系统和结构非常清晰,扩展灵活,安全,HMVC,大量使用了PHP5的新特性,代码非常优雅,文档也不错。

我个人写的超轻微框架也要发布了。 CodeIgniter
中文资料相对比较齐全 简洁 易学 可扩展性强
  1. 入门级别推荐Codeigniter。因为它比较容易上手,有很棒的文档,有中文社区,但是它也有不好的地方,一是Codeigniter不算是完全的OO框架,二是对更大一点的项目而言,功能薄弱了一点,需要自己去拓展。
  2. 功能稍微强大一点的,推荐Yii。它比Codeigniter要复杂一些,文档没Codeigniter的好,所以花的力气要大一些。
个人感觉是,不要太早就上框架,打好基础还是很重要的。
smarty只是模板引擎,应该还算不上是框架吧? yii 快 全 老外一直维护,易理解,看看文档就能快速上手了 国外的CodeIgniter,国产的ThinkPHP
看过许多框架,有些确实强大,但是非常繁琐难懂,比较容易上手的应该属ThinkPHP了
如果你英文阅读能力过硬,还是建议使用国外框架,他们通常强大和健壮的多,缺点就是出现问题的时候你只能在英文世界寻找答案 强烈推荐 Yii 框架
越用越觉得强大。
程序员写项目不就是要讲究效率吗?如果你还在为一个分页、表单验证花大把的时间,那你改试试这个框架了。
不然等着你的就是加班,和加班。 先使用 ThinkPHP 3.2 用作初期使用,做一个完整的产品出来,在使用的过程中要阅读它的源码,最好是自己能去改,因为TP是基于php 5.2设计的,与php 5.3之间的差距还非常大,所以尽可能的按照php 5.3的方式来改TP,改的过程中,自然而然能理解TP的设计原理和一个PHP框架所该有哪些功能。

然后就去使用Laravel 4,因为他语法简洁,使用composer,命名空间等,对于PHP所完成的功能块也清晰。

最后去使用 Smyfony,因为这个框架非常的强大,他会带给你一个完善和爽快的新世界(前提当然是你能充分地理解它的设计目的)。

在使用这三个框架时,你就会充分的理解出他们分别的设计目的和针对的开发团队层次了。

而决定于用哪个,便是由你的项目大小、参与人数、开发者素质多方面决定的了。 Zend
推荐阅读
  • 如何撰写适应变化的高效代码:策略与实践
    编写高质量且适应变化的代码是每位程序员的追求。优质代码的关键在于其可维护性和可扩展性。本文将从面向对象编程的角度出发,探讨实现这一目标的具体策略与实践方法,帮助开发者提升代码效率和灵活性。 ... [详细]
  • 浏览器作为我们日常不可或缺的软件工具,其背后的运作机制却鲜为人知。本文将深入探讨浏览器内核及其版本的演变历程,帮助读者更好地理解这一关键技术组件,揭示其内部运作的奥秘。 ... [详细]
  • 本文详细介绍了 Java 网站开发的相关资源和步骤,包括常用网站、开发环境和框架选择。 ... [详细]
  • 当前,众多初创企业对全栈工程师的需求日益增长,但市场中却存在大量所谓的“伪全栈工程师”,尤其是那些仅掌握了Node.js技能的前端开发人员。本文旨在深入探讨全栈工程师在现代技术生态中的真实角色与价值,澄清对这一角色的误解,并强调真正的全栈工程师应具备全面的技术栈和综合解决问题的能力。 ... [详细]
  • SWIG 3.0.12 Windows官方版下载:实现C语言与PHP、Java、Python等多语言代码互调接口
    SWIG 3.0.12 Windows官方版是一款强大的接口生成工具,能够实现C语言与多种高级编程语言(如Java、C#)及脚本语言(如PHP、JavaScript、Python)之间的互操作性。它不仅支持跨语言调用,还提供了丰富的封装选项,确保了代码的高效性和可维护性。 ... [详细]
  • 本文整理了一份基础的嵌入式Linux工程师笔试题,涵盖填空题、编程题和简答题,旨在帮助考生更好地准备考试。 ... [详细]
  • 本文介绍了 Go 语言中的高性能、可扩展、轻量级 Web 框架 Echo。Echo 框架简单易用,仅需几行代码即可启动一个高性能 HTTP 服务。 ... [详细]
  • 本文详细介绍了Java代码分层的基本概念和常见分层模式,特别是MVC模式。同时探讨了不同项目需求下的分层策略,帮助读者更好地理解和应用Java分层思想。 ... [详细]
  • 本文将带你快速了解 SpringMVC 框架的基本使用方法,通过实现一个简单的 Controller 并在浏览器中访问,展示 SpringMVC 的强大与简便。 ... [详细]
  • 解决Bootstrap DataTable Ajax请求重复问题
    在最近的一个项目中,我们使用了JQuery DataTable进行数据展示,虽然使用起来非常方便,但在测试过程中发现了一个问题:当查询条件改变时,有时查询结果的数据不正确。通过FireBug调试发现,点击搜索按钮时,会发送两次Ajax请求,一次是原条件的请求,一次是新条件的请求。 ... [详细]
  • 通过利用代码自动生成技术,旨在减轻软件开发的复杂性,缩短项目周期,减少冗余代码的编写,从而显著提升开发效率。该方法不仅能够降低开发人员的工作强度,还能确保代码的一致性和质量。 ... [详细]
  • PHP自学必备:从零开始的准备工作与工具选择 ... [详细]
  • 掌握PHP编程必备知识与技巧——全面教程在当今的PHP开发中,了解并运用最新的技术和最佳实践至关重要。本教程将详细介绍PHP编程的核心知识与实用技巧。首先,确保你正在使用PHP 5.3或更高版本,最好是最新版本,以充分利用其性能优化和新特性。此外,我们还将探讨代码结构、安全性和性能优化等方面的内容,帮助你成为一名更高效的PHP开发者。 ... [详细]
  • 根据 Laravel 官方文档,视图文件在首次加载时会被编译成普通的 PHP 代码并存储在缓存中。当视图文件发生更改时,系统会自动检测到这些变化并重新编译和缓存新的版本,以确保用户始终看到最新的内容。这一机制显著提高了应用的性能和响应速度。 ... [详细]
  • JVM上高性能数据格式库包Apache Arrow入门和架构的示例分析
    小编给大家分享一下JVM上高性能数据格式库包ApacheArrow入门和架构的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!Apac ... [详细]
author-avatar
欣儿2502862161
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有