如何更好地使用PHP在MySQL表中添加代码前缀?
我将编写PHP脚本,它使用MySQL表的表前缀。我应该像这样写所有的请求吗如何更好地使用PHP在MySQL表中添加代码前缀?,php,mysql,Php,Mysql,我将编写PHP脚本,它使用MySQL表的表前缀。我应该像这样写所有的请求吗 $db_query='select * from '.$tbl_prefix.'sometable;'; 或者可以设置一些变量,将此前缀添加到所有查询中? 例如,我正在执行请求 $db_query='select * from sometable;'; MAGIC将前缀添加到表本身,所以对于MySQL查询 select * from pref_sometable; 你的第一个样品就是要走的路;每次都需要在前缀前加前
$db_query='select * from '.$tbl_prefix.'sometable;';
或者可以设置一些变量,将此前缀添加到所有查询中?
例如,我正在执行请求
$db_query='select * from sometable;';
MAGIC将前缀添加到表本身,所以对于MySQL查询
select * from pref_sometable;
你的第一个样品就是要走的路;每次都需要在前缀前加前缀。不过,这可能会使它更容易成为一个函数(如果您需要更新任何内容,最好只更新一个位置而不是多个位置):
你的第一个样品就是要走的路;每次都需要在前缀前加前缀。不过,这可能会使它更容易成为一个函数(如果您需要更新任何内容,最好只更新一个位置而不是多个位置):
没有MySQL命令可以做到这一点,您必须像最初一样在代码中实现它。因此:
$db_query='select * from '.$tbl_prefix.'sometable;';
很好
如果不想在每个查询上添加前缀,可以创建如下对象:
class database {
function select($qry,$database) {
$db_query="select " . $qry . " from myprefix_" . $database;
// $res = query($db_query);
return $res;
}
}
$db_query=database->select("*","sometable");
// echo $db_query;
$db_query=database->select("playernick","sometable");
// echo $db_query;
这不是100%的PHP,它只是一个简单的想法,这样你就可以得到它。没有MySQL命令可以做到这一点,你必须像开始一样在代码中实现它。因此:
$db_query='select * from '.$tbl_prefix.'sometable;';
很好
如果不想在每个查询上添加前缀,可以创建如下对象:
class database {
function select($qry,$database) {
$db_query="select " . $qry . " from myprefix_" . $database;
// $res = query($db_query);
return $res;
}
}
$db_query=database->select("*","sometable");
// echo $db_query;
$db_query=database->select("playernick","sometable");
// echo $db_query;
这不是100%的PHP,它只是一个简单的想法,这样您就可以得到它。事后替换字符串以插入表前缀太难了。基本上,它只能用于最简单的查询。一旦您有多个联接或别名,或者需要在WHERE子句中使用虚线表名,您就会遇到很大的困难。坚持连接。为什么需要使用表前缀?为什么您认为它是强制性的,并且始终是一种良好的做法?事后进行字符串替换以插入表前缀太难了。基本上,它只能用于最简单的查询。一旦您有多个联接或别名,或者需要在WHERE子句中使用虚线表名,您就会遇到很大的困难。坚持连接。为什么需要使用表前缀?为什么您认为这是强制性的,而且始终是一种良好的做法?