Kohana is an open source , PHP5, web application framework that uses the Model View Controller design pattern . It aims to be secure, lightweight, and easy to learn and use.[1] It supports only version 5 or higher of PHP in order to make full use of the improvements in that version's object-oriented design.
History
Kohana was originally created as a project fork [2] of the CodeIgniter PHP framework under the name Blue Flame . The principal reason for the fork was to create a more community-based web application framework as many users were frustrated with CodeIgniter' s lack of bug fixes and inclusion of new features requested by the community. In July 2007 , Blue Flame was renamed to Kohana to avoid possible trademark issues[3] . The name Kohana was chosen when the developers began looking through Native American dictionaries to find words that would have little copyright conflict. Kohana is the Sioux word for 'swift.' It is also the Japanese word for 'tiny flower', Ukrainian and Polish word for 'beloved' (only of feminine gender) and the name of a famous killer whale (Kohana ) — none of which have any relation to the original intended meaning.
While the initial release of Kohana was essentially an improved version of CodeIgniter, by the end of 2007 the Kohana development team had released version 2.0 which was a complete re-write from the ground up. The new version 2.0 was strictly a PHP5 framework and has formed the basis for all other releases since.
Differences between Kohana and CodeIgniter
[[Category:{{Expansion depth limit exceeded |{{{Expansion depth limit exceeded }}}|{{{Expansion depth limit exceeded }}}}}]]
[[Category:{{Expansion depth limit exceeded |{{{Expansion depth limit exceeded }}}|{{{Expansion depth limit exceeded }}}}}]][[Category:{{Expansion depth limit exceeded |{{{Expansion depth limit exceeded }}}|{{{Expansion depth limit exceeded }}}}}]]
File:Kohana-modules.png Cascading resources visualized.
Strict PHP5 OOP . Offers many benefits: visibility protection, automatic class loading, overloading, interfaces, abstracts, and singletons.[4]
Kohana has joined the GoPHP5 initiative. All releases from 2.2 on will conform with this project.[4]
Continues CodeIgniter design patterns. Anyone who has used CodeIgniter will quickly understand Kohana' s structure and design patterns.[4]
Community, not company, driven. Kohana is driven by community discussion, ideas, and code. Kohana developers are from all around the world, each with their own talents. This allows a rapid and flexible development cycle that can respond to bugs and requests within hours, instead of days or months.[4]
GET, POST, COOKIE, and SESSION arrays all work as expected. Kohana does not limit your access to global data, but offers the same filtering and XSS protection that CodeIgniter does.[4]
Cascading resources, modules, and inheritance. Controllers, models, libraries, helpers, and views can be loaded from any location within your system, application, or module paths. Configuration options are inherited and can be dynamically overwritten by each application.[4]
No namespace conflicts. Class suffixes, like _Controller, are used to prevent namespace conflicts. This allows a User's controller and Users model to both be loaded at the same time.[4]
True auto-loading of classes. This includes libraries, controllers, models, and helpers. This is not pre-loading, but true dynamic loading of classes, as they are instantiated.[4]
Helpers are static classes, not functions. For example, instead of using form_open(), you would use form::open().[4]
Library drivers and API consistency. Libraries can use different "drivers" to handle different external APIs transparently. For example, multiple session storage options are available (database, cookie, and native), but the same interface is used for all of them. This allows new drivers to be developed for existing libraries, which keeps the API consistent and transparent.[4]
Powerful event handler. Kohana events can by dynamically added to, replaced, or even removed completely. This allows many changes to Kohana execution process, without modification to existing system code.[4]
Kohana features a built-in ORM library, whereas CodeIgniter does not.[5]
Third-party vendors
Vendor
Usage
Inclusion
phputf8
All of the Kohana UTF-8 functions are ported from the phputf8 project[6]
Core
Popoon
The default XSS filter used by Kohana was originally created by Christian Stocker for the popoon framework. The original file is called externalinput.php[6]
Core
HTML Purifier
The alternative XSS filter used by Kohana is HTML Purifier[6]
Optional
SwiftMailer
The recommended way to send emails in Kohana is using SwiftMailer[6]
Optional
PHP Markdown
Markdown is a simple text-to-HTML formatting tool[6]
Optional
Release history
Colour
Meaning
Red
Old release; not supported
Yellow
Old release; still supported
Green
Current release
Blue
Future release
Product Name
Major Version
Code Name
Minor Version
Release Date
Significant Changes
BlueFlame
1.0
1.0
2007-05-31[7]
Initial release
Forked from CodeIgniter 1.5.4 (pre-release, svn revision 566)[7]
Kohana
2.0
Superlime
2.0
2007-11-08[8]
Complete rewrite[8]
Dropped PHP4 support in favour of PHP5[3]
Fully OOP framework[3]
No legacy code[3]
Modules included[3]
Cascading resources concept[3]
2.1
Schneefeier
2.1.0
2008-02-05[8]
New libraries: Cache, Image, ORM, Payment
New helpers: num, expires, email, html::link(), html::breadcrumb(), arr::binary_search(), valid::standard_text(), text::widont();
New modules: Auth & Forge; PostgreSQL & MySQLi drivers
gzip output compression, bug fixes & API changes[9]
2.1.1
2008-02-06[8]
Fixed bug with extending helpers
Added English (UK), German and Macedonian languages[10]
2.1.2
2008-06-10
Added: KOHANA_IS_WIN constant for checking for a Windows environment
Fixed: Lots of bugfixes[11]
2.2
Efímera
2.2.0
2008-08-08
New libraries (Captcha )
New helpers (upload, format, etc.)
New configuration attributes,
New drivers (MSSQL, PayPal Pro)
General cleanup, optimization and bug fixes
[12]
2.3
Kernachtig
2.3.0
2008-12-20
New Router
New Database library (object_db)
2.3.1
2009
2.3.2
2009
Aegolius
2.3.3
2009-05-31
Buteo Regalis
2.3.4
2009-06-05
2.4
2.4
New database library
Updates to ORM
View caching
3.0
Renaissance
3.0
2009-09-17
Complete rewrite of the framework
HMVC design pattern
Additional features added to core
Helpers and libraries are now all classes with class and/or member methods and properties
References
↑ overview [Kohana User Guide]
↑ {{Expansion depth limit exceeded |{{Expansion depth limit exceeded |[[{{{Expansion depth limit exceeded }}} |{{{Expansion depth limit exceeded }}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}]]
|{{{Expansion depth limit exceeded }}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}
}}{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |;
|{{Expansion depth limit exceeded | & |; }}
}}{{Expansion depth limit exceeded |[[{{{Expansion depth limit exceeded }}} |{{{Expansion depth limit exceeded }}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}]]
|{{{Expansion depth limit exceeded }}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}
}}{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |;
|{{Expansion depth limit exceeded | & |; }}
}}{{Expansion depth limit exceeded |[[{{{Expansion depth limit exceeded }}} |{{{Expansion depth limit exceeded }}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}]]
|{{{Expansion depth limit exceeded }}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}
}}{{Expansion depth limit exceeded | et al.
}}
}}
}}, ed{{Expansion depth limit exceeded |s}}{{Expansion depth limit exceeded |.||.}}{{Expansion depth limit exceeded | ({{{Expansion depth limit exceeded }}}){{Expansion depth limit exceeded | [{{{Expansion depth limit exceeded }}}]
}}
}}
}}{{Expansion depth limit exceeded |,
}}{{Expansion depth limit exceeded | 1={{Expansion depth limit exceeded |{{{Expansion depth limit exceeded }}}
|{{Expansion depth limit exceeded |{{{Expansion depth limit exceeded }}}
|{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |http://www.pubmedcentral.nih.gov/articlerender.fcgi?tool=pmcentrez&artid={{{ Expansion depth limit exceeded }}}
}}
}}
}}
}}
| 2={{Expansion depth limit exceeded |Expansion depth limit exceeded {{{Expansion depth limit exceeded }}}Expansion depth limit exceeded
|"{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |
}}[{{{Expansion depth limit exceeded }}}]
}}"
}}
}}{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |,
}} {{Expansion depth limit exceeded | 1={{Expansion depth limit exceeded |{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |{{{Expansion depth limit exceeded }}}
|{{Expansion depth limit exceeded |{{Expansion depth limit exceeded | http://www.pubmedcentral.nih.gov/articlerender.fcgi?tool=pmcentrez&artid={{{ Expansion depth limit exceeded }}}
}}}}
}}
}}
|{{Expansion depth limit exceeded |{{{Expansion depth limit exceeded }}}
|{{Expansion depth limit exceeded |{{Expansion depth limit exceeded | http://www.pubmedcentral.nih.gov/articlerender.fcgi?tool=pmcentrez&artid={{{ Expansion depth limit exceeded }}}
}}}}
}}
}}
| 2=Expansion depth limit exceeded {{Expansion depth limit exceeded | [{{{Expansion depth limit exceeded }}}]
}}Expansion depth limit exceeded
}}
}}{{Expansion depth limit exceeded | ({{{Expansion depth limit exceeded }}})
}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}{{Expansion depth limit exceeded |, Expansion depth limit exceeded {{{Expansion depth limit exceeded }}}Expansion depth limit exceeded
}}{{Expansion depth limit exceeded |,
}}{{Expansion depth limit exceeded | ({{{Expansion depth limit exceeded }}} ed.)
}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |Expansion depth limit exceeded
|,
}} {{{Expansion depth limit exceeded }}}
}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}{{Expansion depth limit exceeded | [{{{Expansion depth limit exceeded }}}]
}}
}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}{{Expansion depth limit exceeded |, {{Expansion depth limit exceeded |.|A|a}}rchived{{Expansion depth limit exceeded |{{Expansion depth limit exceeded | from {{Expansion depth limit exceeded ||the original}}}}
}}{{Expansion depth limit exceeded | on {{{Expansion depth limit exceeded }}}
}}{{Expansion depth limit exceeded |. {{Expansion depth limit exceeded |If you specify |{{Expansion depth limit exceeded |archiveurl|archivedate}}=, you must {{Expansion depth limit exceeded | also specify |{{Expansion depth limit exceeded |archivedate|archiveurl}}=|first specify |url=}}}}
}}
}}{{Expansion depth limit exceeded ||.}} <span
class="Z3988"
title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook{{Expansion depth limit exceeded |&rft.genre=bookitem&rft.btitle={{Expansion depth limit exceeded }}&rft.atitle={{Expansion depth limit exceeded }}
|&rft.genre=book&rft.btitle={{Expansion depth limit exceeded }}
}}&rfr_id=info:sid/en.wikipedia.org:Kohana_(web_framework)">
↑ 3.0 3.1 3.2 3.3 3.4 3.5 overview:history [Kohana User Guide]
↑ 4.00 4.01 4.02 4.03 4.04 4.05 4.06 4.07 4.08 4.09 4.10
{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |[[{{{Expansion depth limit exceeded }}} |{{{Expansion depth limit exceeded }}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}]]
|{{{Expansion depth limit exceeded }}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}
}}{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |;
|{{Expansion depth limit exceeded | & |; }}
}}{{Expansion depth limit exceeded |[[{{{Expansion depth limit exceeded }}} |{{{Expansion depth limit exceeded }}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}]]
|{{{Expansion depth limit exceeded }}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}
}}{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |;
|{{Expansion depth limit exceeded | & |; }}
}}{{Expansion depth limit exceeded |[[{{{Expansion depth limit exceeded }}} |{{{Expansion depth limit exceeded }}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}]]
|{{{Expansion depth limit exceeded }}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}
}}{{Expansion depth limit exceeded | et al.
}}
}}
}}, ed{{Expansion depth limit exceeded |s}}{{Expansion depth limit exceeded |.||.}}{{Expansion depth limit exceeded | ({{{Expansion depth limit exceeded }}}){{Expansion depth limit exceeded | [{{{Expansion depth limit exceeded }}}]
}}
}}
}}{{Expansion depth limit exceeded |,
}}{{Expansion depth limit exceeded | 1={{Expansion depth limit exceeded |{{{Expansion depth limit exceeded }}}
|{{Expansion depth limit exceeded |{{{Expansion depth limit exceeded }}}
|{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |http://www.pubmedcentral.nih.gov/articlerender.fcgi?tool=pmcentrez&artid={{{ Expansion depth limit exceeded }}}
}}
}}
}}
}}
| 2={{Expansion depth limit exceeded |Expansion depth limit exceeded {{{Expansion depth limit exceeded }}}Expansion depth limit exceeded
|"{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |
}}[{{{Expansion depth limit exceeded }}}]
}}"
}}
}}{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |,
}} {{Expansion depth limit exceeded | 1={{Expansion depth limit exceeded |{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |{{{Expansion depth limit exceeded }}}
|{{Expansion depth limit exceeded |{{Expansion depth limit exceeded | http://www.pubmedcentral.nih.gov/articlerender.fcgi?tool=pmcentrez&artid={{{ Expansion depth limit exceeded }}}
}}}}
}}
}}
|{{Expansion depth limit exceeded |{{{Expansion depth limit exceeded }}}
|{{Expansion depth limit exceeded |{{Expansion depth limit exceeded | http://www.pubmedcentral.nih.gov/articlerender.fcgi?tool=pmcentrez&artid={{{ Expansion depth limit exceeded }}}
}}}}
}}
}}
| 2=Expansion depth limit exceeded {{Expansion depth limit exceeded | [{{{Expansion depth limit exceeded }}}]
}}Expansion depth limit exceeded
}}
}}{{Expansion depth limit exceeded | ({{{Expansion depth limit exceeded }}})
}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}{{Expansion depth limit exceeded |, Expansion depth limit exceeded {{{Expansion depth limit exceeded }}}Expansion depth limit exceeded
}}{{Expansion depth limit exceeded |,
}}{{Expansion depth limit exceeded | ({{{Expansion depth limit exceeded }}} ed.)
}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |Expansion depth limit exceeded
|,
}} {{{Expansion depth limit exceeded }}}
}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}{{Expansion depth limit exceeded | [{{{Expansion depth limit exceeded }}}]
}}
}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}{{Expansion depth limit exceeded |, {{Expansion depth limit exceeded |.|A|a}}rchived{{Expansion depth limit exceeded |{{Expansion depth limit exceeded | from {{Expansion depth limit exceeded ||the original}}}}
}}{{Expansion depth limit exceeded | on {{{Expansion depth limit exceeded }}}
}}{{Expansion depth limit exceeded |. {{Expansion depth limit exceeded |If you specify |{{Expansion depth limit exceeded |archiveurl|archivedate}}=, you must {{Expansion depth limit exceeded | also specify |{{Expansion depth limit exceeded |archivedate|archiveurl}}=|first specify |url=}}}}
}}
}}{{Expansion depth limit exceeded ||.}} <span
class="Z3988"
title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook{{Expansion depth limit exceeded |&rft.genre=bookitem&rft.btitle={{Expansion depth limit exceeded }}&rft.atitle={{Expansion depth limit exceeded }}
|&rft.genre=book&rft.btitle={{Expansion depth limit exceeded }}
}}&rfr_id=info:sid/en.wikipedia.org:Kohana_(web_framework)">
↑ {{Expansion depth limit exceeded |{{Expansion depth limit exceeded |[[{{{Expansion depth limit exceeded }}} |{{{Expansion depth limit exceeded }}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}]]
|{{{Expansion depth limit exceeded }}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}
}}{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |;
|{{Expansion depth limit exceeded | & |; }}
}}{{Expansion depth limit exceeded |[[{{{Expansion depth limit exceeded }}} |{{{Expansion depth limit exceeded }}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}]]
|{{{Expansion depth limit exceeded }}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}
}}{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |;
|{{Expansion depth limit exceeded | & |; }}
}}{{Expansion depth limit exceeded |[[{{{Expansion depth limit exceeded }}} |{{{Expansion depth limit exceeded }}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}]]
|{{{Expansion depth limit exceeded }}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}
}}{{Expansion depth limit exceeded | et al.
}}
}}
}}, ed{{Expansion depth limit exceeded |s}}{{Expansion depth limit exceeded |.||.}}{{Expansion depth limit exceeded | ({{{Expansion depth limit exceeded }}}){{Expansion depth limit exceeded | [{{{Expansion depth limit exceeded }}}]
}}
}}
}}{{Expansion depth limit exceeded |,
}}{{Expansion depth limit exceeded | 1={{Expansion depth limit exceeded |{{{Expansion depth limit exceeded }}}
|{{Expansion depth limit exceeded |{{{Expansion depth limit exceeded }}}
|{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |http://www.pubmedcentral.nih.gov/articlerender.fcgi?tool=pmcentrez&artid={{{ Expansion depth limit exceeded }}}
}}
}}
}}
}}
| 2={{Expansion depth limit exceeded |Expansion depth limit exceeded {{{Expansion depth limit exceeded }}}Expansion depth limit exceeded
|"{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |
}}[{{{Expansion depth limit exceeded }}}]
}}"
}}
}}{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |,
}} {{Expansion depth limit exceeded | 1={{Expansion depth limit exceeded |{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |{{{Expansion depth limit exceeded }}}
|{{Expansion depth limit exceeded |{{Expansion depth limit exceeded | http://www.pubmedcentral.nih.gov/articlerender.fcgi?tool=pmcentrez&artid={{{ Expansion depth limit exceeded }}}
}}}}
}}
}}
|{{Expansion depth limit exceeded |{{{Expansion depth limit exceeded }}}
|{{Expansion depth limit exceeded |{{Expansion depth limit exceeded | http://www.pubmedcentral.nih.gov/articlerender.fcgi?tool=pmcentrez&artid={{{ Expansion depth limit exceeded }}}
}}}}
}}
}}
| 2=Expansion depth limit exceeded {{Expansion depth limit exceeded | [{{{Expansion depth limit exceeded }}}]
}}Expansion depth limit exceeded
}}
}}{{Expansion depth limit exceeded | ({{{Expansion depth limit exceeded }}})
}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}{{Expansion depth limit exceeded |, Expansion depth limit exceeded {{{Expansion depth limit exceeded }}}Expansion depth limit exceeded
}}{{Expansion depth limit exceeded |,
}}{{Expansion depth limit exceeded | ({{{Expansion depth limit exceeded }}} ed.)
}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}{{Expansion depth limit exceeded |{{Expansion depth limit exceeded |Expansion depth limit exceeded
|,
}} {{{Expansion depth limit exceeded }}}
}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}{{Expansion depth limit exceeded | [{{{Expansion depth limit exceeded }}}]
}}
}}{{Expansion depth limit exceeded |, {{{Expansion depth limit exceeded }}}
}}{{Expansion depth limit exceeded |, {{Expansion depth limit exceeded |.|A|a}}rchived{{Expansion depth limit exceeded |{{Expansion depth limit exceeded | from {{Expansion depth limit exceeded ||the original}}}}
}}{{Expansion depth limit exceeded | on {{{Expansion depth limit exceeded }}}
}}{{Expansion depth limit exceeded |. {{Expansion depth limit exceeded |If you specify |{{Expansion depth limit exceeded |archiveurl|archivedate}}=, you must {{Expansion depth limit exceeded | also specify |{{Expansion depth limit exceeded |archivedate|archiveurl}}=|first specify |url=}}}}
}}
}}{{Expansion depth limit exceeded ||.}} <span
class="Z3988"
title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook{{Expansion depth limit exceeded |&rft.genre=bookitem&rft.btitle={{Expansion depth limit exceeded }}&rft.atitle={{Expansion depth limit exceeded }}
|&rft.genre=book&rft.btitle={{Expansion depth limit exceeded }}
}}&rfr_id=info:sid/en.wikipedia.org:Kohana_(web_framework)">
↑ 6.0 6.1 6.2 6.3 6.4 overview:credits [Kohana User Guide]
↑ 7.0 7.1 BlueFlame 1.0 Released! | CodeIgniter Forums
↑ 8.0 8.1 8.2 8.3 changelog [Kohana User Guide]
↑ changelog:2.1 [Kohana User Guide]
↑ changelog:2.1.1 [Kohana User Guide]
↑ changelog:2.1.2 [Kohana User Guide]
↑ changelog:2.2 [Kohana User Guide]
External links
See also
ko:Kohana
pl:KohanaPHP
pt:Kohana Framework
ru:Kohana
If you like SEOmastering Site, you can support it by - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 and more...