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
-
Sınıf Yapısı:
Databasesı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çinconnectyöntemi kullanılır. -
Veri Ekleme:
insertyöntemi, bir tabloya veri eklemek için kullanılır. Bu yöntem, tablo adını ve eklemek istediğiniz verileri alır. -
Veri Güncelleme:
updateyöntemi, belirli bir kaydı güncellemek için kullanılır. Güncellenmesi gereken verileri ve ID'yi alır. -
Veri Silme:
deleteyöntemi, belirli bir kaydı silmek için kullanılır. -
Veri Sorgulama:
selectyö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.
Bu ders size yardımcı oldu mu? Puan verin!
Geri bildiriminiz içeriğimizi sürekli güncel ve kaliteli tutmamızı sağlar.
Sıkça Sorulan Sorular (SSS)
Bu ders ve konuyla ilgili en çok merak edilenler
Php 8 Database Class dersini öğrenmek için ön koşul var mı?
Bu eğitim temel seviyeden ileri seviyeye adım adım hazırlanmıştır. Kodları kopyalayıp Canlı Editör üzerinde test ederek kolayca pratik yapabilirsiniz.
Örnek kodları kendi projelerimde ücretsiz kullanabilir miyim?
Evet, PHP Hocası üzerindeki tüm kod örnekleri açık kaynak mantığıyla sunulmaktadır. Ticari veya kişisel projelerinizde serbestçe kullanabilirsiniz.
Takıldığım bir yerde nereden soru sorabilirim?
Dersin altındaki topluluk yorumları bölümünden sorunuzu sorabilirsiniz. Eğitmenlerimiz ve topluluk üyelerimiz kısa sürede yanıt verecektir.
Topluluk Yorumları (0)
Ders Hakkında Yorum Yap veya Soru Sor
Henüz yorum yapılmamış. İlk yorumu siz yazın!