我的開發過程中的PHP的兩個版本之間存在以下情況。我暫時做了以下以下內容:PHP函數覆蓋?
$oldphp = getdbVersion();
if($oldphp)
{
$result = mysql_query($sql) or die(mysql_error());
}
else
{
$result = mysqli_query($conn, $sql) or die(mysql_error());
}
反正是有覆蓋這些功能,這樣你就可以調用新的名字,但老名字叫做自動使代碼只會有:
mysqli_query ($sql);
但會看到基於服務器版本的正確功能?
我最終使用的包裝使代碼檢查並不需要是所有的地方,以檢查是否函數存在:
function _mysql_query($connection, $findrecords)
{
if(check_sql_version())
{
$result = mysql_query($findrecords);
}
else
{
$result = mysqli_query($connection, $findrecords);
}
if(! $result)
{
die('Invalid query: ' . (check_sql_version())? mysql_error():mysqli_error());
}
return $result;
}
你不能簡單地取代舊的mysql'_...()'函數那樣。如果你想做正確的事情,兩個連接器都需要不同的用法。 – arkascha
你可以使用包裝類,忘了分貝共(ORM任何系統一樣主義等) – kero
你跑的比舊的5.0的PHP? mysqli可從php 5.0獲得。 – fusion3k