コードイグナイターについて!
こんにちは。アルシタウンです。
今日のレビュートピックはコードイグナイターです。しばしばCIと呼ばれています。
人々はなぜコードイグナイターを使うのですか?
コードイグナイターの利点として
1. 設置スペースが小さいフレームワーク
2. 優れた性能
3. コマンドライン(command line)を使用する必要のないフレームワーク
4. 限定的なコーディング規則に準拠する必要がないフレームワーク
5. フレームワークに関する明確かつ徹底した文書(韓国ユーザーフォーラムが存在する)
6.シンプルなインターフェース/論理構造→迅速にプロジェクトを開発できます
7. 初心者が起動しやすいPHPフレームワーク(他のフレームワークに比べて簡単)
8. ソースコードのみをダウンロードしてサーバーのルートに押出を解放すればインストールが終了する。
9. CodeIgniterで生成されたURLはきれいで検索エンジンで索引付けされやすい構造。一般的なクエリ文字列ベースのURLではなくセグメントベースのURLを使用する
(ex:example.com/class / function / ID)
コードイグナイターは、LaravelやSymfonyなどの大規模なフレームワークに比べて比較的学習しやすく柔軟です。
特定の方法を強制せず、単にWebサービスをうまく作成することに焦点を当てます。
フレームワークランニングカーブが大きすぎる場合は、サービスの作成に集中するよりも
フレームワークの機能を習得するには、より多くの時間を費やす必要があります。
MVCモデルを使用
MVCは、Model View Controllerの略語として開発する際に各ファイルの役割を分けるプログラミングパターンを指します。
Model(モデル) - データ、データベース(DB)連動データを保存、読み込み、削除。
/application/models
/application/config/database.php
View(ビュー) - html/css/javascrip 視覚的に表現されるコードを管理
/application/views
Controller(コントローラ) - 機能、全体的な動作担当モデルとビューの間に存在。クライアントからの要求を受け取り、どのモデルを呼び出してデータを処理し、どのビューを呼び出してクライアントに応答をエクスポートするかを決定します。
/application/controllers
必要なインストーラ
Apache、Webサーバー
mysql or MariaDB
PHP
上記3つを別々に設置しても関係ありません。
シンプルな統合サーバー環境でも可能です。(ex XAMPP)
要求事項
コードイグナイタ4はPHP 7.2以降で動作します。
国際化エクステンション intl マルチバイトエクステンション mbstring 必須です。(php.iniファイルで変更可能)
extension = intl
extension = mbstring
活性化
Webホスティングの場合は、Webホスティング会社に拡張を有効にする必要があります。
インストール
2. 解凍
WebサーバーのDocument ROOTに移動して圧縮を解除します。
ローカルの場合、Apacheサーバーの指定されたプロジェクトパス
たとえば、統合サーバーのBit Nami の場合は、/Bitnami/wampstack-version/apache2/ htdocs /に展開してください。
環境設定
インストール後の環境設定
.envファイルは、コードイグナイタ4のデフォルト設定ファイルです。
.envファイルで定義されていないコンテンツは、app / Config / App.phpで定義されているものに置き換えられます。
環境設定ファイルが別々に存在する理由は、複数のサーバーの設定を互いに異なった、あるいは同じに保つためです。
たとえば、テストするステージングサーバー、開発サーバー、実際の運用を行う運用サーバーの環境は互いに異なるからです。
CIのMVCルールだけを熟知していれば開発がとても簡単だ。
セグメントベースのURL構造

ソースライフコーディングコードイグナイター
便利な機能
Helper
ヘルパーとは、よく使うロジックをリサイクルできるようにした一種のライブラリです。
CIにはライブラリという概念が別々に存在するが、HelperとLibraryの違いは
Helperがオブジェクト指向ではなく独立した関数である場合
libraryはオブジェクト指向のクラスです。
$this->load->helper( 'ヘルパーの名前'); $autoload['helper'] = array('url', 'file');
配列(Array)、CAPTCHAヘルパー、Cookie(Cookie)、日付(Date)
ディレクトリ(Directory)、ダウンロード(Download)、Eメール(Email)
ファイル(File)、フォーム(Form)、HTML、インフレクタ(語形変更)、言語(Language)
番号(Number)、パス(Path)、セキュリティ(Security)、スマイリー(Smiley)
文字列(String)、テキスト処理(Text)、タイポグラフィ(Typography)
URL、XML
Helper 製作
別にヘルパーを作っても使用が可能です。
Helperは軽くするのに最適なライブラリです。
作成方法は application/helper ディレクトリに date_helper.php ファイルを作成し、
その中に korean_date() を定義するだけです。
図書館
ライブラリは、リサイクル可能性のあるロジックをリサイクルするのに最適な形にしています。
CIは、Web開発でよく使用されるロジックを組み込み(Core)ライブラリとして提供しています。
組み込みライブラリを拡張して必要に応じて変更して使用でき、直接ライブラリを作成することもできます。
$this->load->library("ライブラリ名");
$this->load->library(array('ライブラリ名1','ライブラリ名2'));
セッション
PHPはデフォルトでユーザーのセッション情報をファイルとして保存します。
しかし、セッションはユーザーを識別する情報なので、セキュリティは非常に重要です。
これをローカルシステムのファイルとして保存することはセキュリティの脆弱性になります。
また、PHPが動作するサーバーが複数台に分散すると、ユーザーのセッション情報を共有することが難しくなるため、
セッション情報のリポジトリとしてデータベースを使用します。
CodeIgniterは、ユーザーのセッション情報とデータベースを
接続してくれる機能を基本的に持っています。
セッション情報の使用
セッションを使用するには、まずセッションライブラリクラスをロードする必要があります。
セッションはサービス全体で使用される機能性であるため、コードイグナイタが提供するauto loadを使用すると便利に使用できます。
ここまでコードイグナイターについて学びました。
ありがとうございます。


댓글
댓글 쓰기