How can PHP developers ensure that items remain available for purchase even if they are paid for by multiple users simultaneously?

To ensure that items remain available for purchase even if they are paid for by multiple users simultaneously, PHP developers can implement a locking mechanism that prevents multiple users from purchasing the same item at the same time. This can be achieved by using a database transaction to lock the item record while a user is in the process of purchasing it. Once the purchase is completed, the lock can be released to make the item available for purchase again.

<?php

// Start a transaction
$db->beginTransaction();

// Lock the item record for purchase
$db->query('SELECT * FROM items WHERE id = :item_id FOR UPDATE', ['item_id' => $item_id]);

// Process the purchase
// Update item quantity, deduct user balance, etc.

// Commit the transaction
$db->commit();

?>