問題: 使用 PDO 準備好的語句建立輔助函數以簡化資料運算。此函數應產生一個 SET 語句來更新現有記錄,並允許輕鬆插入新資料。
解:
function dbSet($fields, &$values) { $set = ''; $values = array(); foreach ($fields as $field) { if (isset($_POST[$field])) { $set .= "`$field` = ?, "; $values[] = $_POST[$field]; } } return rtrim($set, ','); } $fields = explode(" ", "name surname lastname address zip fax phone date"); $_POST['date'] = $_POST['y'] . "-" . $_POST['m'] . "-" . $_POST['d']; $query = "UPDATE $table SET " . dbSet($fields, $values) . ", stamp=NOW() WHERE>
此函數採用欄位陣列名稱和對值陣列的參考。它遍歷欄位名稱,檢查 POST 資料中是否存在對應的值。如果是,則建構一個 SET 語句片段。對值數組的引用允許函數用適當的值填充它。
要使用該函數,首先將欄位名稱分解為陣列。然後呼叫該函數,傳遞欄位數組和對空值數組的參考。此函數傳回一個 SET 語句片段。最後,準備查詢並使用值數組執行它。
注意事項:
以上是如何建立 PDO 輔助函數以實現高效率的插入/更新操作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!