Bạn có thể cung cấp cho các trình giữ chỗ bất kỳ tên nào bạn muốn, tương tự như thế này cho SQL của bạn:
INSERT INTO propAmenities
(amenity_id, property_id)
VALUES
(:amenity_id1, :property_id1),
(:amenity_id2, :property_id2),
(:amenity_id3, :property_id3)
Và sau đó:
$stmt->bindParam(':amenity_id1', 1);
$stmt->bindParam(':property_id1', 1);
$stmt->bindParam(':amenity_id2', 2);
$stmt->bindParam(':property_id2', 1);
$stmt->bindParam(':amenity_id3', 3);
$stmt->bindParam(':property_id3', 1);
Hoặc, tất nhiên, xây dựng mảng thích hợp để execute
. Trong trường hợp này, các trình giữ chỗ không có tên có thể dễ dàng làm việc hơn:
INSERT INTO propAmenities
(amenity_id, property_id)
VALUES
(?, ?),
(?, ?),
(?, ?)
Và sau đó, bạn có thể lặp lại các giá trị của mình và gọi execute
với mảng thích hợp:
$stmt->execute(array(1, 1, 2, 1, 3, 1));