Php 8 Database Class

Php 8 Database Class

PHP 8 ile bir veritabanı sınıfı oluşturmak, veritabanı işlemlerini daha düzenli ve yeniden kullanılabilir hale getirir. Bu tür bir sınıf, veritabanına bağlanma, veri ekleme, güncelleme, silme ve sorgulama işlemlerini kolaylaştırır. Aşağıda, basit bir veritabanı sınıfının nasıl oluşturulacağı ve kullanılacağı ile ilgili adım adım bir rehber bulabilirsiniz.

1. Veritabanı Sınıfını Tanımlama

Aşağıda, temel veritabanı işlemleri için bir Database sınıfı örneği verilmiştir:

<?php class Database { private $host; private $db; private $user; private $pass; private $charset; private $pdo; // Constructor public function __construct( $host, $db, $user, $pass, $charset = 'utf8mb4' ) { $this->host = $host; $this->db = $db; $this->user = $user; $this->pass = $pass; $this->charset = $charset; $this->connect(); } // Veritabanına bağlanma private function connect( ) { $dsn = "mysql:host={$this->host};dbname={$this->db};charset={$this->charset}"; try { $this->pdo = new PDO($dsn, $this->user, $this->pass); $this->pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch (PDOException $e) { echo "Bağlantı hatası: " . $e->getMessage(); } } // Veri ekleme public function insert( $table, $data ) { $fields = implode(", ", array_keys($data)); $placeholders = ":" . implode(", :", array_keys($data)); $sql = "INSERT INTO $table ($fields) VALUES ($placeholders)"; $stmt = $this->pdo->prepare($sql); $stmt->execute($data); } // Veri güncelleme public function update( $table, $data, $id ) { $set = ''; foreach ($data as $key => $value) { $set .= "$key = :$key, "; } $set = rtrim($set, ', '); // Sonundaki virgülü kaldır $sql = "UPDATE $table SET $set WHERE id = :id"; $data['id'] = $id; // ID'yi ekle $stmt = $this->pdo->prepare($sql); $stmt->execute($data); } // Veri silme public function delete( $table, $id ) { $sql = "DELETE FROM $table WHERE id = :id"; $stmt = $this->pdo->prepare($sql); $stmt->execute(['id' => $id]); } // Veri sorgulama public function select( $table, $columns = '*', $conditions = '' ) { $sql = "SELECT $columns FROM $table $conditions"; $stmt = $this->pdo->prepare($sql); $stmt->execute(); return $stmt->fetchAll(PDO::FETCH_ASSOC); } } ?>

2. Sınıfı Kullanma

Bu sınıfı kullanarak veritabanı işlemlerini gerçekleştirmek için aşağıdaki örnek kodu inceleyebilirsiniz:

<?php // Veritabanı bilgileri $host = 'localhost'; $db = 'veritabani_adi'; $user = 'kullanici_adi'; $pass = 'sifre'; // Database sınıfını oluşturma $db = new Database($host, $db, $user, $pass); // Veri ekleme $db->insert('kullanici', [ 'ad' => 'Ali Veli', 'email' => 'ali@example.com' ]); // Veri güncelleme $db->update('kullanici', [ 'email' => 'yeni_email@example.com' ], 1); // ID'si 1 olan kullanıcının e-postasını güncelle // Veri silme $db->delete('kullanici', 1); // ID'si 1 olan kullanıcıyı sil // Veri sorgulama $kullanicilar = $db->select('kullanici'); print_r($kullanicilar); ?>

Açıklamalar

  1. Sınıf Yapısı: Database sınıfı, veritabanı bağlantısı ve işlemleri için gerekli yöntemleri içerir. Bağlantı bilgileri constructor ile alınır ve veritabanına bağlanmak için connect yöntemi kullanılır.

  2. Veri Ekleme: insert yöntemi, bir tabloya veri eklemek için kullanılır. Bu yöntem, tablo adını ve eklemek istediğiniz verileri alır.

  3. Veri Güncelleme: update yöntemi, belirli bir kaydı güncellemek için kullanılır. Güncellenmesi gereken verileri ve ID'yi alır.

  4. Veri Silme: delete yöntemi, belirli bir kaydı silmek için kullanılır.

  5. Veri Sorgulama: select yöntemi, belirli bir tablodan veri sorgulamak için kullanılır. İsteğe bağlı olarak hangi sütunların döneceğini ve hangi koşulların geçerli olduğunu belirtmenize olanak tanır.

Sonuç

Bu örnek, PHP 8 ile basit bir veritabanı sınıfı oluşturarak veritabanı işlemlerini nasıl gerçekleştirebileceğinizi göstermektedir. İhtiyacınıza göre bu sınıfı daha karmaşık işlemleri destekleyecek şekilde geliştirebilirsiniz.



Yorum Ekle

Üzerine gel