[英]Future-proofing functions for php/sql queries
我正在嘗試為使用php運行的常見查詢和其他操作編寫一系列實用程序功能。
我這樣做的原因是為了使我的應用程序可以輕松地在PDO,mysqli及其后繼之類的產品之間升級。
在我開始采用這種方法之前,我想知道是否有些PHP專家可以回顧這種方法並告訴我您的想法-這對將來的證明和可升級性來說是一個好主意嗎? 這將如何影響性能? 將來我會以任何方式限制我的應用程序嗎?
//BASIC QUERY EXECUTION (ESCAPED)
function qry($sql)
{
$sql = $db->real_escape_string($sql);
if(!$result = $db->query($sql))
{
die('There was an error running the escaped query [' . $db->error . ']');
}
return $result;
}
//PREPARE AN SQL STATEMENT
function prep($sql)
{
$statment = $db->prepare($sql);
return $statement;
}
//BIND A PARAMETERS AND VARIABLE TYPE
function bnd($statement,$parameter,$type)
{
$statement->bind_param($type, $parameter);
return $statement;
}
//EXECUTE PREPARED QUERY (UNESCAPED)
function ex($statement)
{
if(!$result = $statement->execute())
{
die('There was an error running the prepared query [' . $db->error . ']');
}
return $result;
}
//FETCH ARRAY
function ftch($result)
{
$row = $result->fetch_assoc();
return $row;
}
//GET NUMBER OF ROWS
function num($result)
{
$num = $result->num_rows;
return $num;
}
//FREE THE RESULT
function fre($result)
{
$result->free();
}
只是一些准則
qry()
函數根本無法工作。 其余的一切都還不錯,盡管我會擺脫bnd()
和prep()
函數,以便在一個ex()
調用中全部完成。 而且,我將使用單獨的函數來獲取單獨的結果類型,例如標量,行,行數組和資源。 這是我正在談論的示例:基於非常相似概念的safeMysql類
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.