PHP somo la 98: Library za PHP ambazo unaweza kutumia ORM
Somo hili litakwenda kukutajia baadhi ya library za php ambazo hutumika kwa matumizi ya ORM
Kuna library kadhaa za PHP ambazo unaweza kutumia kwa ORM (Object-Relational Mapping) bila kuhitaji kutumia framework kama Laravel au Symfony. Hapa kuna baadhi ya bora zaidi:
1. Eloquent (Standalone)
- Ingawa Eloquent ni sehemu ya Laravel, unaweza kuitumia nje ya Laravel kwa kui-install manually.
- Installation:
composer require illuminate/database - Mfano wa Matumizi:
use Illuminate\Database\Capsule\Manager as Capsule; require 'vendor/autoload.php'; $capsule = new Capsule; $capsule->addConnection([ 'driver' => 'mysql', 'host' => '127.0.0.1', 'database' => 'test_db', 'username' => 'root', 'password' => '', 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '', ]); $capsule->setAsGlobal(); $capsule->bootEloquent(); class User extends Illuminate\Database\Eloquent\Model {} $users = User::all(); foreach ($users as $user) { echo $user->name; }
2. Doctrine ORM
- Ni ORM yenye nguvu inayotumiwa na Symfony, lakini unaweza kuitumia standalone.
- Installation:
composer require doctrine/orm - Faida: Inatoa Unit of Work, Repositories, na Entity Mapping kwa njia ya OOP.
- Mfano wa Matumizi:
(Hii inahitaji Configuration kidogo zaidi kwa kutumia YAML/XML au PHP Annotations.)
3. RedBeanPHP
- Ni lightweight ORM ambayo haihitaji configuration kubwa.
- Installation:
composer require gabordemooij/redbean - Mfano wa Matumizi:
require 'vendor/autoload.php'; use RedBeanPHP\R; R::setup('mysql:host=127.0.0.1;dbname=test_db', 'root', ''); $book = R::dispense('books'); $book->title = "PHP ORM"; R::store($book); $books = R::findAll('books'); foreach ($books as $book) { echo $book->title; }
4. Medoo
- Ni ORM nyepesi kwa ajili ya database query na ni rahisi kuliko Eloquent au Doctrine.
- Installation:
composer require catfan/medoo - Mfano wa Matumizi:
require 'vendor/autoload.php'; use Medoo\Medoo; $database = new Medoo([ 'database_type' => 'mysql', 'database_name' => 'test_db', 'server' => '127.0.0.1', 'username' => 'root', 'password' => '' ]); $database->insert("users", [ "name" => "John Doe", "email" => "john@example.com" ]); $users = $database->select("users", ["name", "email"]); print_r($users);
5. Paris + Idiorm
- Idiorm ni PDO-based query builder, na Paris ni ORM inayojengwa juu yake.
- Installation:
composer require j4mie/idiorm j4mie/paris - Mfano wa Matumizi:
require 'vendor/autoload.php'; ORM::configure('mysql:host=127.0.0.1;dbname=test_db'); ORM::configure('username', 'root'); ORM::configure('password', ''); class User extends Model {} $user = Model::factory('User')->create(); $user->name = "Jane Doe"; $user->save(); $users = Model::factory('User')->find_many(); foreach ($users as $user) { echo $user->name; }
Nini Unapaswa Kuchagua?
| Library | Faida | Hasara |
|---|---|---|
| Eloquent (Standalone) | Ina nguvu na ni rahisi kama unajua Laravel | Inaleta dependencies nyingi |
| Doctrine ORM | Ina nguvu sana na inafuata OOP kwa kina | Inahitaji kujifunza configuration |
| RedBeanPHP | Haihitaji configuration, ni rahisi sana | Inaweza kuwa nzito kwenye projects kubwa |
| Medoo | Nyepesi, rahisi kutumia | Haina feature nyingi za ORM halisi |
| Paris + Idiorm | Rahisi kwa matumizi ya SQL-style ORM | Ina community ndogo |
Ikiwa unataka ORM rahisi bila kuingia kwenye configuration nyingi, RedBeanPHP au Medoo ni chaguo zuri.
Ikiwa unataka ORM yenye nguvu zaidi, Eloquent au Doctrine ni bora.
CHAGUO LETU KATIKA LIBRARY HIZO
RedBeanPHP ni chaguo bora kwa miradi midogo na ya kati kwa sababu ni rahisi kutumia, haina configuration nyingi, na inaweza kujenga database yenyewe bila migrations.
Kwa mujibu wa mafunzo haya tutatumia library ya ReadBeanPHP ili kuonyesha uhalisia wa jinsi ORM zinavyoweza kufanya kazi katika uhalisia wake.
1. Install RedBeanPHP
Kama unatumia Composer, ingiza amri hii kwenye terminal yako:
composer require gabordemooij/redbean
Hata hivyo njia ya composer haipendekezwi kutumiwa. Wenyewe waliotengeneza library hiyo wanapendekeza u download faili moja kw amoja kwenye website yao. Tembelea link hii unaweza kupakua rb.php kutoka ? RedBeanPHP Official
2. Unganisha na Database
Katika faili lako la PHP, ongeza RedBeanPHP na unganishe na database yako. katika mfano ha...
Umeionaje Makala hii.. ?
Share On:
👉1 Kitau cha Fiqh 👉2 web hosting 👉3 ai web app 👉4 Dua za Mitume na Manabii 👉5 Bongolite - Game zone - Play free game 👉6 Tafasiri ya Riyadh Swalihina
Post zinazofanana:
PHP somo la 97: Jinsi ya kuchakata data zaidi kwa kutumia ORM
Katika somo hili utakwenda kujifunz akuchakata data zaidi kw akutumia ORM kama ku join table
Soma Zaidi...PHP somo la 52: Aina za access modifire na zinavyotofautiana.
Katika somo hili utakwenda kujifunza kuhusu access modifier ili kuweza kuthibiti nama ya kuzitumia properties kwenye class.
Soma Zaidi...PHP - somo la 39: Jinsi ya kutengeneza mafaili na mafolda kwenye server kwa kutumia PHP
Katika somo hili utakwenda kujifunza jinsi ya kuzungumza na server ili kutengeneza mafaili, mafolda, kufuta na ku edit kwa kutumia PHP.
Soma Zaidi...PHP somola 69: jinsi ya kutuma email kwa watu zaidi ya mmoja kwa kutumia PHPMailer
Katika somo il utajifunza kutuma email kwa watu wengi kwa kutumia PHPMailer. Pia utajifunza jinsi ya kuweka Carbon Copy na Blind Carbon Copy
Soma Zaidi...PHP - somo la 14: Jinsi ya kutengeneza database kwa kutumia PHP
Katika somo hili utakwenda kujifunza jinsi ya kutumia PHP kutengeneza database kwenye mysql database.
Soma Zaidi...PHP - somo la 23: Jinsi ya kutumia condition statement kwenye database kwa kutumia PHP
Katika somo hili utakwenda kuona namna ya kutuia if else kwenye data zilizopo kwenye database kwa kutumia PHP
Soma Zaidi...