Yii初版2008年12月3日 (15年前) (2008-12-03)
最新版2.0.16[1] / 2019年1月30日 (5年前) (2019-01-30)
リポジトリ
github.com/yiisoft/yii2
Yii は、オープンソースで作成されたオブジェクト指向のコンポーネントベースなMVCのPHPで書かれたWebアプリケーションフレームワークである。Yiiの発音は[ji:]"イー"で、名称は「簡単:Easy)」 ・「効率的:(Efficient)」 ・「高拡張性:Extensible)」を表しているとしている[2]。また、Yiiのスペルは「Yes It Is!(はい、それです!)」の頭文字より名付けられた[3]。 Yiiプロジェクトは、2008年1月1日にPRADOの開発者であったQiang(Charlie) Xue(中国名:薛強)が、PRADOの欠点を改善し、さらに簡単で拡張性が高く高速なPHP5に基づくフレームワークを開発する為に始められた[2]。同年10月に最初のα版[4]が公開され、12月3日にはYii1.0が正式に公表された[3]。 Version状態Releaseリリース日メンテナンス終了日セキュリティサポート終了日対応PHPバージョン
歴史
特徴
コンポーネントベースである点[5]
画面表示部分とロジック部分を分離することが可能なMVC設計パターン
純粋なオブジェクト指向
軽量で、MemcacheやAPC(Alternative PHP Cache)を考慮しているので高負荷のアプリケーションにも耐えうる設計[6]
PHP5専用である[7]が、PHP7でも通常に動かせ、互換性を持つようマイナーアップデートが行われている。
ロシア・ウクライナ・中国など旧共産圏での利用が多い[8]。中国での人気は下降傾向にある一方で、ロシアでは根強い人気を持つ。2019年2月現在も世界のウェブサイトの3割強をロシアが占めており、Laravel、Symfony、Codeigniterを凌ぎ、ロシアでは最もメジャーなPHPフレームワークとなっている。[9]
日本では利用実績が他国に比べて少ない[10][11]
後継のYii3が現在開発中となっている。
主な機能
MVCによるデザイン構成
複雑なWSDLのサービスの仕様の生成とWebサービスリクエスト処理の管理。
i18N8N/L10Nサポート - 国際化ならびにローカライズに対応(メッセージ翻訳・日付と時刻の書式・番号の書式設定およびインターフェイス等)。
異なるメディアにキャッシュデータを保存し、異なるレベルで使用することが可能[12] - データ・キャッシング、ページキャッシュ、フラグメントキャッシュとダイナミックコンテンツをサポートしている。キャッシュする記憶媒体を変更することができる。
例外処理(エラーハンドリング)とメッセージのロギング機能 - エラー発生した時は、例外処理[13]が実行され、対応するビューファイルを検索してエラーメッセージを表示し、エラーログ[14]を記録・分類してエラーメッセージを異なった送り先(ファイルやメール等)に送信。
セキュリティ対策 - クロスサイトスクリプティング等の予防やクッキーの改ざん防止等。
PHPUnit
スケルトン[18]アプリケーションやCRUDアプリケーション等の自動コード生成[19]
Yiiのコンポーネントやコマンドラインのツールによって生成されたコードはXHTML規格に準拠している
サードパーティーが作成したコードでも動作するように慎重に設計されている - 例えば、Yiiのアプリケーション上でPEARまたはZend Frameworkからのコードを使用することも可能
バージョン履歴
1.0セキュリティサポート終了1.02008年12月3日2010年12月31日[20]PHP 5.1.0以降[20]
1.0.12009年1月4日
1.0.22009年2月1日
1.0.32009年3月1日
1.0.42009年4月5日
1.0.52009年5月10日
1.0.62009年6月7日
1.0.72009年7月5日
1.0.82009年8月9日
1.0.92009年9月6日