شرح صفوف ومحتوى الفقرة
بعد إدراج سجل جديد في جدول يحتوي على مفتاح أساسي تلقائي الزيادة (AUTO_INCREMENT)، نستدعي الدالة $pdo->lastInsertId() للحصول على المعرف الرقمي الذي ولّدته قاعدة البيانات للسجل المضاف:
- تُستدعى من الكائن
$pdoوليس$stmt: انتبه دائماً إلى أنlastInsertId()دالة تابعة لكائن الاتصال$pdoوتُرجع المعرف كنص. - معزولة لكل جلسة اتصال: حتى لو قام مئات الزوار بإضافة سجلات في نفس اللحظة، تُرجع
$pdo->lastInsertId()المعرف الخاص بعملية الإدراج التي تمت على اتصالك الحالي فقط.
PHP
<?php
$pdo = new PDO("sqlite::memory:");
$pdo->exec("CREATE TABLE orders (id INTEGER PRIMARY KEY AUTOINCREMENT, total REAL)");
$stmt = $pdo->prepare("INSERT INTO orders (total) VALUES (:total)");
$stmt->execute(["total" => 450.00]);
$newOrderId = (int) $pdo->lastInsertId();
echo "Created Order #" . $newOrderId;