Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menggunakan ORM (Pemetaan Hubungan Objek) dalam rangka kerja Kohana?

Bagaimana untuk menggunakan ORM (Pemetaan Hubungan Objek) dalam rangka kerja Kohana?

WBOY
WBOYasal
2023-06-04 09:01:33529semak imbas

Kohana ialah rangka kerja PHP ringan yang dibangunkan menggunakan gaya seni bina MVC. Ia menyediakan ORM (Pemetaan Perhubungan Objek) untuk memudahkan operasi pangkalan data dan meningkatkan kecekapan pembangunan. Dalam artikel ini, kami akan meneroka cara menggunakan ORM dengan rangka kerja Kohana.

  1. Mengkonfigurasi sambungan pangkalan data

Pertama, untuk menggunakan ORM dalam rangka kerja Kohana, kita perlu mengkonfigurasi sambungan pangkalan data dalam fail konfigurasi. Buka fail /application/config/database.php, ubah suai tatasusunan mysql, dan isikan hos pangkalan data, nama pengguna, kata laluan dan nama pangkalan data yang betul.

Contohnya:

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. Tentukan model ORM

Model ORM ialah kelas PHP yang mewakili jadual pangkalan data. Kita perlu mencipta fail baharu dalam direktori /application/classes/Model untuk mentakrifkan model ORM. Nama fail ini hendaklah dikaitkan dengan nama jadual dan berakhir dengan akhiran _Model.

Sebagai contoh, jika kita ingin mencipta model ORM yang mewakili artikel, kita perlu mencipta fail bernama article_Model.php dalam direktori /application/classes/Model.

Berikut ialah contoh model ORM:

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

class Model_Article extends ORM {

    protected $_table_name = 'articles';

    protected $_primary_key = 'id';

}

Dalam contoh di atas, model ORM Model_Article mewarisi kelas ORM, menunjukkan bahawa fungsinya disediakan oleh kelas ORM. Pembolehubah $_table_name yang dilindungi menentukan nama jadual data yang diwakili oleh model ORM, dan pembolehubah $_primary_key yang dilindungi menentukan nama lajur kunci utama bagi jadual data yang diwakili oleh model ORM.

Selain itu, model ORM Kohana menyediakan banyak pembolehubah dan kaedah lain, seperti $_belongs_to, $_has_many, $_has_one, find_all(), dll., kami boleh menggunakannya apabila diperlukan.

  1. Menggunakan kaedah ORM

Selepas kita menentukan model ORM, kita boleh menggunakan kaedah yang disediakan oleh kelas ORM untuk mengendalikan jadual pangkalan data.

Berikut ialah beberapa kaedah ORM yang biasa digunakan:

  • create(): Cipta objek baharu dan kekalkannya ke pangkalan data
  • find(): Cari a objek tunggal
  • find_all(): Cari berbilang objek
  • kemas kini(): Kemas kini objek dalam pangkalan data
  • delete(): Padam objek daripada pangkalan data

Berikut ialah contoh penggunaan kaedah 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 />';
        }
    }

}

Dalam contoh di atas, kami menggunakan $articles = ORM::factory('Article')->find_all(); semua artikel dan jadikan gelung output tajuk dan teks artikel ini.

  1. Kesimpulan

Dalam rangka kerja Kohana, ORM menyediakan cara yang sangat mudah untuk mengendalikan pangkalan data. Menggunakan ORM, kita boleh mentakrifkan model ORM dengan cepat, dan kemudian menggunakan kaedah yang disediakan oleh kelas ORM untuk mengendalikan pangkalan data dengan mudah. Harap artikel ini dapat membantu anda lebih memahami penggunaan ORM dalam rangka kerja Kohana.

Atas ialah kandungan terperinci Bagaimana untuk menggunakan ORM (Pemetaan Hubungan Objek) dalam rangka kerja Kohana?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn