찾다

 >  Q&A  >  본문

求推荐,适合小项目用的【轻量级】的PHP开发框架。

使用场景:

  1. 内部工具使用,不希望框架太复杂文件太大;
  2. PHP 版本 5.3+,所以可以不需要为了兼容 PHP4 而做妥协;
  3. 不需要太复杂的 DB 封装,甚至直接用 PDO 都可以接受;
  4. 有基本的框架功能,路由,参数过滤,表单验证等;

追加一点:我希望框架够简洁,PHP文件和类在 100 个以内

怪我咯怪我咯2788일 전2234

모든 응답(28)나는 대답할 것이다

  • 天蓬老师

    天蓬老师2017-04-10 16:08:45

    一直使用 CodeIgniter,后来偶然的机会接触了后起之秀 —— Laravel 框架。

    1. 表现力

    你知道下面这行代码里 true 代表什么意思么?

    $uri = Uri::create('some/uri', array(), array(), true);
    

    另外,你知道其他参数在这里的意思么(除了第一个)?当然你不知道。因为这行代码没有表现力。 表现力 (形容词): 有效地表达的思想或意思 再看看这段代码:

    $url = URL::to_secure('some/uri');
    

    这个表达式使用 HTTPS 协议创建了一条 URL 链接, 事实上,上面两种写法都在做同样的事情,但那一个更一目了然,更富有表现力呢?

    富有表现力的代码(具备自描述特征)—-意味着可维护的代码

    2. 简单性

    事实上,Web(互联网)的本质是是很简单的。它是只是请求–响应。 在我构建实现 Laravel 时,我多次这样告诉自己。我只想用简单方式实现–捕获请求并发送响应。

    Route::get('home', function() { return View::make('home.index'); });
    

    当然,我们还需要实现其他功能,如验证、 分页等。所有这一切在 Laravel 中都实现的更简单,没有让人抓狂的的配置文件。想要进行用户信息分页显示时预加载用户发布的文章么?没问题:

    $users = User::with('posts')->paginate();
    echo $users->links();
    

    请注意上面代码的简单直接。你不必告诉 Laravel 当前你在操作什么页面,和你没有创建一些可笑的分页的配置文件。

    文章来源:为什么选择 Laravel?

    회신하다
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-10 16:08:45

    第一个PHP项目使用cakephp,后来完全不用框架手写了几年,再后来,由公用部分代码逐渐抽象出一个路由控制文件外加几个常用类库文件,模版和代码分离,就是我们现在的开发框架,底层的东西如果出了问题将是致命的,所以如果不是钻研框架,自己要快速开发产品,需要一个属于自己的框架,可以清楚每一行代码是否会带来问题以及是否会影响性能,基本上每一种框架都有自己的适应场景,我们的框架对我们的产品来说就很合适,给别人就无法使用,推荐你还是自己写一个吧,其实也不难,可以根据LazyPHP改造一下。

    회신하다
    0
  • 黄舟

    黄舟2017-04-10 16:08:45

    推荐 ColaPHP,绝对轻量级,编码风格也很喜欢,作者近期已更新到 2.0RC 版。
    https://github.com/fuchaoqun/colaphp

    关于性能测试,给个对比测试给你看。
    http://www.ruilog.com/blog/view/b6f0e42cf705.html

    회신하다
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-10 16:08:45

    http://www.slimframework.com/

    Slim is a PHP micro framework that helps you quickly write simple yet powerful web applications and APIs.

    <?php
    $app = new \Slim\Slim();
    $app->get('/hello/:name', function ($name) {
        echo "Hello, $name";
    });
    $app->run();
    

    FEATURES

    • Powerful router
      • Standard and custom HTTP methods
      • Route parameters with wildcards and conditions
      • Route redirect, halt, and pass
      • Route middleware
    • Template rendering with custom views
    • Flash messages
    • Secure cookies with AES-256 encryption
    • HTTP caching
    • Logging with custom log writers
    • Error handling and debugging
    • Middleware and hook architecture
    • Simple configuration

    SYSTEM REQUIREMENTS

    PHP 5.3.0 or newer

    회신하다
    0
  • PHP中文网

    PHP中文网2017-04-10 16:08:45

    可以试试CI(codeigniter ),文档齐全,开发又够简单快速,适何中小项目

    用户手册目录:http://codeigniter.org.cn/user_guide/toc.html

    회신하다
    0
  • PHPz

    PHPz2017-04-10 16:08:45

    推荐 initPHP 框架,是我目前来说见过相对比较好比较高效的国产PHP框架了。

    其扩展开发以及使用都很简单,上手也很快。

    有兴趣可以看看: http://www.initphp.com/1_1.htm

    ===========================================

    pdo 目前 我也提供了封装好的! 到时候可以提供上去。

    회신하다
    0
  • PHP中文网

    PHP中文网2017-04-10 16:08:45

    FatFree我见过最小的PHP框架了

    회신하다
    0
  • 黄舟

    黄舟2017-04-10 16:08:45

    LazyPHP
    轻框架。包含一个前端控制器,20个常用函数和用于页面布局的Layout系统,10分钟即可学会。LP采用BSD开源协议,在代码内保留框架名即可随意商用。
    https://github.com/easychen/LazyPHP

    회신하다
    0
  • 阿神

    阿神2017-04-10 16:08:45

    Laravel +1 不过是挺大的。 LazyPHP 可能是你想要的。

    회신하다
    0
  • PHP中文网

    PHP中文网2017-04-10 16:08:45

    canphp,doitphp这俩个也不错。

    회신하다
    0
  • 취소회신하다