li₃

li₃ 是用于 PHP 的快速、灵活和最 RAD 的开发框架。(li₃ is the fast, flexible and most RAD development framework for PHP.)

  • 所有者: UnionOfRAD/lithium
  • 平台: Linux, Mac, Windows, BSD, Solaris, Unix-like
  • 許可證: BSD 3-Clause "New" or "Revised" License
  • 分類:
  • 主題:
  • 喜歡:
    0
      比較:

Github星跟蹤圖

li₃

你需要一个更好的框架。她就在这里。

li₃是 PHP 的快速、灵活和最开放的 RAD 开发框架。

第一个框架

li₃是第一个也是唯一一个从PHP 5.3+ 开始构建的主要PHP框架 ,率先打破主要新技术,其中包括通过单一的,统一的API桥接关系数据库和非关系数据库之间的差距 。

斗胆说句(Promiscuously opinionated)

有些框架为您提供了一组可靠的类,但很少或没有默认的项目组织,让您自己打理自己创建的每个项目,并花时间连接应该一起工作的框架类。 其他人为您提供了很好的组织约定,但无法打破这些惯例,如您需要并且经常无法重写或替换核心框架类。

li₃是第一个给你两全其美的框架,同时也没有妥协。 事实上,如果您的需求需要,li₃的API有意设计为允许您在应用程序生命周期的过程中“扩展”框架和自己的自定义代码。

技术

li₃充分利用了最新的PHP功能,其中包括命名空间、后期静态绑定和闭包。 li₃创新的 方法过滤器系统 广泛使用闭包和匿名函数,允许应用程序开发人员“包装” 框架方法调用,在之前拦截参数,并返回值。

li₃也符合PHP命名空间标准PSR-4,允许您轻松地将其他PHP标准库和框架与li₃应用程序集成,反之亦然。

li₃整合了最新的存储技术,包括MongoDB、CouchDB和 Redis,以及对于Cassandra、ElasticSearch等的插件支持。

灵活性

li₃使您可以完全控制您的应用程序,从过滤器到动态修改框架内部,动态依赖,以扩展和替换核心类与应用程序或插件类,大量使用面向适配器的配置,使其无缝地在不同的技术和选项之间移动。

li₃框架堆栈的每个组件都可以通过强大的插件架构进行替换。用 Doctrine 2PHPActiveRecord替换默认的ORM/ODM实现;不喜欢模板?使用 TwigMustache,或者自己推出。

您甚至不需要编写完整的应用程序,请使用路由系统在单个文件中构建一个微应用程序,而不会放弃框架结构的可维护性。

主要指標

概覽
名稱與所有者UnionOfRAD/lithium
主編程語言PHP
編程語言PHP (語言數: 5)
平台Linux, Mac, Windows, BSD, Solaris, Unix-like
許可證BSD 3-Clause "New" or "Revised" License
所有者活动
創建於2011-06-07 16:55:24
推送於2025-02-06 02:57:04
最后一次提交2019-09-13 12:27:06
發布數51
最新版本名稱v2.0.1 (發布於 2024-03-21 10:00:47)
第一版名稱lithium-0.1 (發布於 2009-11-16 20:26:15)
用户参与
星數1.2k
關注者數88
派生數235
提交數5.1k
已啟用問題?
問題數540
打開的問題數36
拉請求數497
打開的拉請求數6
關閉的拉請求數327
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?

li₃

You asked for a better framework. Here it is.

li₃ is the fast, flexible and the most RAD development framework for PHP.

A framework of firsts

li₃ is the first and only major PHP framework built from the ground up for PHP
5.3+, and the first to break ground into major new technologies, including
bridging the gap between relational and non-relational databases through a
single, unified API.

Promiscuously opinionated

Some frameworks give you a solid set of classes, but little or no default
project organization, leaving you to fend for yourself on each project you
create, and spend time wiring up framework classes that should just work
together. Others provide you with great organizational conventions, but no way
to break out of those conventions if you need to, and too often, no way to
override or replace core framework classes.

li₃ is the first framework to give you the best of both worlds, without
compromising either. In fact, li₃'s API is intentionally designed to allow you
to "grow out of" the framework and into your own custom code over the course of
your application's lifecycle, if your needs require.

Technology

li₃ takes full advantage of the latest PHP features, including
namespaces, late static binding and closures. li₃'s innovative method filter
system
makes extensive use
of closures and anonymous functions to allow application developers to "wrap"
framework method calls, intercepting parameters before, and return values after.

li₃ also complies with PSR-4, the PHP namespacing standard, allowing you to easily
integrate other PHP standard libraries and frameworks with li₃ applications,
and vice-versa.

li₃ integrates the latest storage technologies, including MongoDB, CouchDB and
Redis, with plugin support for Cassandra, ElasticSearch and others.

Flexibility

li₃ gives you full control over your application, from filters to dynamically
modify framework internals, to dynamic dependencies to extend and replace core
classes with application or plugin classes, to heavy use of adapter-oriented
configurations, to make it seamless to move between different technologies and
options.

Every component of the li₃ framework stack is replaceable through the
robust plugin architecture. Swap out the default ORM / ODM implementation
for Doctrine 2 or PHP
ActiveRecord
. Don't like
the templating? Use Twig,
Mustache, or roll your own.

If you don't even need to write a full application, build a micro-app in a
single file using the routing system, without giving up the maintainability of
the framework's structure.