- str_repeat: documentation ( source)
- implode: documentation ( source)
- array_keys: documentation ( source)
<?php
$data = array("oh" => "D:","do"=>";o");
$sql = "INSERT INTO ".'cms_lol'." (" . implode(', ',array_keys($data)) . ") VALUES (".str_repeat('?, ', count($data)-1)."?)
ON DUPLICATE KEY UPDATE ". implode(' = ?, ',array_keys($data)) . " = ?";
echo $sql;