پی دی او

PDO یک افزونه سبک و قدرتمند PHP برای اتصال به دیتابیس است. از خصوصیات خوب این افزونه که از نسخه ۵٫۱ روی PHP نصب شده موارد زیر است:
 پشتیبانی از دیتابیس‌های متنوع از جمله مای‌اس‌کیوال، MsSQL، اس‌کیوال لایت و غیره با توابع ثابت. امکان فوق العاده PDO که اجازه میده تا بدون تغییر کدها، دیتابیس رو تغییر بدیم. یعنی مثلاً اگر Applicationای با MySQL ساخته باشیم و تحت شرایطی مجبور به تغییر دیتابیس به MsSQL باشیم، اگر سینتکس کوئری‌ها مشکلی ایجاد نکند، کافیه دیتابیس رو تعویض کنیم و همین. برای سیستم‌های بزرگ این یک مزیت خیلی مهم است.
 پشتیبانی از Exceptionهای PHP.Exceptionها امکان کنترل و بدست‌گیری خطاها رو به برنامه‌نویس می‌دهد. PDO امکان کنترل خطاهای دیتابیس رو هم به برنامه‌نویس می‌دهد.
 پشتیبانی از Prepared Statement و Stored Procedureها و Multiple Recordset. این سه مورد هیچ کدوم توسط توابع MySQL اجرا نمی‌شوند. PDO مورد آخر رو در حال حاضر برای MySQL پشتیبانی نمی‌کند.
 طراحی شده به شکل کلاس. قابلیت مهمی که امکان گسترش و شخصی سازی PDO رو میده مثلاً رفتار توابعش رو تغییر بدیم یا توابع جدیدی بهش اضافه کنیم و در واقع همه امکانات شی گرایی رو باهاش داشته باشیم.PDO از سه تا کلاس تشکیل شده:
 کلاس اصلی به نام PDO که حاوی توابع اصلی مثل اجرای کوئری و اتصال و غیره است.
 کلاس با نام PDOStatement حاوی توابع برای پردازش و بهره‌گیری از کوئری‌های اجرا شده‌است مثل fetch.
 کلاس PDOException برای بدست‌گیری خطاهای رخ داده.

 نحوه اتصال 
با توجه به اینکه PDO یک کلاس است اتصال به دیتابیس با نمونه‌گیری این کلاس شروع میشه:
$pdo = new PDO('mysql:dbname=mydatabase;host=localhost', 'db_username', 'db_password');

 اجرای کوئری 
$assoc_row = $stmt->fetch(PDO::FETCH_ASSOC);
echo "Name: ". $assoc_row['name'];
echo "Age: ". $assoc_row['age'];

$num_row = $stmt->fetch(PDO::PDO::FETCH_NUM);
echo "Name: ". $num_row[1];
echo "Age: ". $num_row[2];

$obj_row = $stmt->fetch(PDO::PDO::FETCH_OBJ);
echo "Name: ". $obj_row->name;
echo "Age: ". $obj_row->age;

$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
foreach($rows as $row) {
    echo "Name: ". $row['name'];
    echo "Age: ". $row['age'];
}

 منابع 

رده:پسوند نام پرونده
رده:زبان برنامه‌نویسی پی‌اچ‌پی
رده:زبان‌های برنامه‌نویسی رویه‌ای
رده:زبان‌های برنامه‌نویسی ساخته‌شده در ۱۹۹۵ (میلادی)
رده:زبان‌های برنامه‌نویسی سطح بالا
رده:زبان‌های برنامه‌نویسی شیءگرا
رده:زبان‌های برنامه‌نویسی کلاس محور
رده:زبان‌های برنامه‌نویسی ماشینی پویا
رده:کامپایلرها و مفسرهای آزاد
رده:نرم‌افزارهای پی‌اچ‌پی
رده:نرم‌افزارهای چندسکویی
رده:نرم‌افزارهای ۱۹۹۵ (میلادی)
رده:واژگان اینترنت