php sqlite

php sqlite

نمونه اسکریپت ایجاد عملیات CRUD با استفاده از رویکرد PHP OOP و پایگاه داده SQLite3


در دنیای توسعه وب، عملیات CRUD (Create, Read, Update, Delete) یکی از بنیادین‌ترین ابزارها و مفاهیم است که هر برنامه‌نویس باید به خوبی با آن آشنا باشد. به همین خاطر، در این مقاله قصد داریم به صورت کامل و جامع، نحوه پیاده‌سازی یک نمونه اسکریپت برای عملیات CRUD، با بهره‌گیری از رویکرد شی‌گرایی در PHP، و استفاده از پایگاه داده SQLite3 را شرح دهیم. این روش، مزایای بسیاری دارد، از جمله سادگی پیاده‌سازی، کم حجم بودن، و عدم نیاز به نصب سرورهای پایگاه داده پیچیده.

اهمیت رویکرد شی‌گرایی در PHP




رویکرد شی‌گرایی در PHP، به توسعه‌دهندگان اجازه می‌دهد برنامه‌های مقیاس‌پذیر و قابل نگهداری‌تر بنویسند. با استفاده از کلاس‌ها، اشیاء و مفاهیم وراثت، کدها ساختاری منسجم‌تر، قابل فهم‌تر، و قابل توسعه پیدا می‌کنند. در این نمونه، ما یک کلاس جامع تعریف می‌کنیم که تمامی عملیات مربوط به پایگاه داده را مدیریت می‌کند و از آن برای انجام عملیات CRUD بهره‌ می‌گیریم.

چرا SQLite3؟




پایگاه داده SQLite3، یکی از بهترین گزینه‌ها برای پروژه‌های کوچک و متوسط است، چون بدون نیاز به سرور مجزا، به راحتی روی سرور یا لوکال اجرا می‌شود. این پایگاه داده، فایل‌های مستقل و سبک دارد که به راحتی قابل حمل و مدیریت هستند. همچنین، API ساده و کاربر پسند دارد که با PHP به خوبی کار می‌کند.

ساختار کلی پروژه




در این پروژه، ما یک فایل PHP اصلی به نام `Database.php` ایجاد می‌کنیم که کلاس مربوط به مدیریت پایگاه داده است. این کلاس، متدهای مربوط به اتصال، اجرای عملیات و مدیریت خطاها را در بر می‌گیرد. سپس، صفحات جداگانه برای هر عملیات CRUD ساخته می‌شود:

- `create.php` برای افزودن داده‌های جدید،

- `read.php` برای نمایش داده‌ها،

- `update.php` برای ویرایش داده‌ها،

- `delete.php` برای حذف داده‌ها.
در این راه، تمرکز ما بر روی بهبود ساختار، خوانایی و انعطاف‌پذیری کد است.

طراحی کلاس Database در PHP




در ادامه، به صورت گام‌به‌گام، کلاس `Database` را معرفی می‌کنیم. این کلاس، پیاده‌سازی اتصال به پایگاه داده، اجرای کوئری‌های مختلف، و مدیریت خطاها را بر عهده دارد. ساختار این کلاس شامل خصوصی‌سازی اتصال، متدهای عمومی برای عملیات CRUD، و مدیریت خطاها است.
php  

<?php

class Database {

private $db;
public function __construct($filePath) {

try {

$this->db = new PDO("sqlite:" . $filePath);

$this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$this->initializeDatabase();

} catch (PDOException $e) {

die("Connection failed: " . $e->getMessage());

}

}
private function initializeDatabase() {

$sql = "CREATE TABLE IF NOT EXISTS users (

id INTEGER PRIMARY KEY AUTOINCREMENT,

name TEXT NOT NULL,

email TEXT NOT NULL UNIQUE

)";

$this->db->exec($sql);

}
public function create($name, $email) {

$sql = "INSERT INTO users (name, email) VALUES (:name, :email)";

$stmt = $this->db->prepare($sql);

$stmt->execute([':name' => $name, ':email' => $email]);

return $this->db->lastInsertId();

}
public function read() {

$sql = "SELECT * FROM users";

return $this->db->query($sql)->fetchAll(PDO::FETCH_ASSOC);

}
public function update($id, $name, $email) {

$sql = "UPDATE users SET name = :name, email = :email WHERE id = :id";

$stmt = $this->db->prepare($sql);

return $stmt->execute([':name' => $name, ':email' => $email, &... ← ادامه مطلب در magicfile.ir
باکس دانلود (php sqlite)
دانلود

پیشنهاد برای دانلود ( php sqlite )

برای دانلود کردن اینجا را کلیک فرمایید

نظرات کاربران (۳)

مریم احمدی

عالی بود .. با تشکر