我正在建立一个新闻网站,我有一个功能文件,所有功能,但几乎所有的功能都与下面的例子相同:
function one(){
$query = "SELECT * FROM table WHERE id='$id'....";
$result = mysql_query($query);
while($row=mysql_num_rows($result))
{echo "$row[data]";} }
所以,基本上有很多函数用于不同的目的,但是具有与上面相同的精确模板,所以,为了节省时间,编码我在想是否可行,简化5行?与功能如:
function(something here, and here){then the result here?}
因为可能从第一个代码改变的唯一事情是:选择,表名,id, 和$ row [data],如果我将它们分配给变量并且其余结构将保持在函数中,那么一切都将保持不变:
检查这个想法。
function simplify() {
$query = "$crud * FROM $table WHERE id= '$id' ";
$result = mysql_query($query);
while($row=mysql_fetch_array($result)) {echo "$row[data]";}
}
所以任何时候,我都需要创建第一个代码,我可以做到
echo simlify(and here would be table name, id, select, create, update...) {
and here the result}
很抱歉,提出这个复杂的问题,或者问复杂的问题,但如果有人有任何想法,关于我在说什么,我需要你的帮助。
答案 0 :(得分:1)
对于简单的数据库调用,这是怎么回事:
$db = new DBAdapter(array('host' => 'localhost'));
$results = $db->Select('mytable')->Where('id > 2')->Execute();
您可以通过构建自己的数据库类来实现此目的。将该类放在一个单独的文件中并重复使用多次。
class DBAdapter extends PDO
{
public function __construct( array $params)
{
// construct the connection
}
public function Select ($table)
{
// do stuff for a table select
return $this;
}
public function Count ($table)
{
// do stuff for a table count
return $this;
}
public function Where ($condition)
{
// do stuff for a where
return $this;
}
public function Execute ()
{
// execute stuff
return $result;
}
}