ホームページ  >  記事  >  バックエンド開発  >  Kohana フレームワークで ORM (オブジェクト リレーショナル マッピング) を使用するにはどうすればよいですか?

Kohana フレームワークで ORM (オブジェクト リレーショナル マッピング) を使用するにはどうすればよいですか?

WBOY
WBOYオリジナル
2023-06-04 09:01:33595ブラウズ

Kohana は、MVC アーキテクチャ スタイルを使用して開発された軽量の PHP フレームワークです。 ORM (オブジェクト リレーショナル マッピング) を提供し、データベース操作を簡素化し、開発効率を向上させます。この記事では、Kohana フレームワークで ORM を使用する方法を説明します。

  1. データベース接続の構成

まず、Kohana フレームワークで ORM を使用するには、構成ファイルでデータベース接続を構成する必要があります。 /application/config/database.php ファイルを開き、mysql 配列を変更し、正しいデータベース ホスト、ユーザー名、パスワード、データベース名を入力します。

例:

return array(
   'default' => array(
       'type'       => 'MySQLi',
       'connection' => array(
           'hostname'   => 'localhost',
           'database'   => 'mydatabase',
           'username'   => 'myusername',
           'password'   => 'mypassword',
           'persistent' => false,
       ),
       'table_prefix' => '',
       'charset'      => 'utf8',
       'caching'      => false,
       'profiling'    => true,
   ),
);
  1. ORM モデルを定義する

ORM モデルは、データベース テーブルを表す PHP クラスです。 ORM モデルを定義するには、/application/classes/Model ディレクトリに新しいファイルを作成する必要があります。このファイルの名前はテーブル名に関連付けられ、_Model サフィックスで終わる必要があります。

たとえば、記事を表す ORM モデルを作成する場合は、article_Model.php という名前のファイルを /application/classes/Model ディレクトリに作成する必要があります。

次は ORM モデルの例です:

<?php defined('SYSPATH') or die('No direct script access.');

class Model_Article extends ORM {

    protected $_table_name = 'articles';

    protected $_primary_key = 'id';

}

上の例では、ORM モデル Model_Article は ORM クラスを継承し、その機能が ORM クラスによって提供されることを示しています。 protected $_table_name 変数は ORM モデルで表されるデータ テーブルの名前を指定し、protected $_primary_key 変数は ORM モデルで表されるデータ テーブルの主キー列名を指定します。

さらに、Kohana の ORM モデルは、$_belongs_to、$_has_many、$_has_one、find_all() など、他の多くの変数とメソッドを提供しており、必要に応じて使用できます。

  1. ORM メソッドの使用

ORM モデルを定義した後、ORM クラスによって提供されるメソッドを使用してデータベース テーブルを操作できます。

一般的に使用される ORM メソッドの一部を次に示します。

  • create(): 新しいオブジェクトを作成し、データベースに永続化します。
  • find(): オブジェクトを検索します。単一オブジェクト
  • find_all(): 複数のオブジェクトを検索
  • update(): データベース内のオブジェクトを更新
  • #delete(): データベースからオブジェクトを削除
次は ORM メソッドの使用例です:

<?php defined('SYSPATH') or die('No direct script access.');

class Controller_Articles extends Controller {

    public function action_index()
    {
        $articles = ORM::factory('Article')->find_all();

        foreach ($articles as $article) {
            echo $article->title . ' - ' . $article->body . '<br />';
        }
    }

}

上の例では、$articles = ORM::factory('Article')->find_all(); を使用して検索します。すべての記事を実行し、これらの記事のタイトルとテキストをループ出力します。

    結論
Kohana フレームワークでは、ORM はデータベースを操作するための非常に便利な方法を提供します。 ORM を使用すると、ORM モデルをすばやく定義し、ORM クラスが提供するメソッドを使用してデータベースを簡単に操作できます。この記事が、Kohana フレームワークでの ORM の使用をより深く理解するのに役立つことを願っています。

以上がKohana フレームワークで ORM (オブジェクト リレーショナル マッピング) を使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。