問題: 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 中国語 Web サイトの他の関連記事を参照してください。