When comparing Li3 vs Flight, the Slant community recommends Li3 for most people. In the question“What are the best PHP frameworks?” Li3 is ranked 10th while Flight is ranked 16th. The most important reason people chose Li3 is:
Lithium has unified the relational and non-relational database APIs into a single one. Being one of the few frameworks to do it.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Unified relational and non-relational database API
Lithium has unified the relational and non-relational database APIs into a single one. Being one of the few frameworks to do it.
Pro Robust plugin architecture
Lithium makes use of PHP namespaces to create a powerful plugin architecture. Almost every component of the framework is replaceable.
Pro Fast Bootstrap & Autoloader
This framework loads faster than most due to its class autoloader. It is flexible as well and handles older classes - but requires the developer to define transforms here for naming convention, includes, etc. Many other frameworks use Composer for autoloading and that significantly slows down their bootstrap time because Composer's autoloader is extremely compatible without much developer interaction (it does not require as much involvement for autoloading legacy libraries). So it's a trade-off, speed vs. a little bit of up-front work.
Pro Integrated unit testing
Lithium comes with integrated unit testing. It also has a test dashboard.
Pro Aspect inspired filter system
Lithium's filter system is based on the paradigm of Aspect-oriented programming which aims to increase modularity by separating cross-cutting concerns and helping speed up development.
Pro Great for building an API
Lithium can return JSON and many other formats from the same actions that render templates increasing productivity in many cases. It handles a "type" key in the route which allows it to render various responses with different Content-Types. This is incredibly useful and easy to extend. This combined with closures in routes makes Lithium a very good framework for building a RESTful API.
Pro Uses static methods
Since Flight uses static methods, it does not require for the application class to be instantiated.
Pro Open source
Flight is open source and is released under the MIT license.
Pro Filters
A unique feature of Flight is something that the author calls filters. Filters are functions which can be executed before and after any other function and can change the parameters and the output of said function.
This feature is used instead of hooks which in other frameworks are used to execute code into different parts of the application's life-cycle.
Cons
Con Less than ideal documentation
Documentation is scattered so it takes a little while to learn and figure some things out.
Con Cannot use ArrayAccess
The fact that it uses static methods means that it's impossible for Flight to make use of ArrayAccess, which in turns means that it cannot inject dependencies easily.
