
关于mysqli函数的封装问题
functionfetch($sql,$result_type=MYSQL_ASSOC){$link=mysqli_connect(HOST,USER,PWD,DBNAM...
function fetch($sql,$result_type=MYSQL_ASSOC){
$link=mysqli_connect(HOST,USER,PWD,DBNAME);
$result=mysqli_query($link,$sql);
if (!$result) {
return $result;
}
else{
$row=mysqli_fetch_array($result,$result_type);
return $row;
}
例如这段代码,这里是要进行一个记录的查询,由于mysqli_query()中需要$link这个参数,那我要是封装成fetch()这个函数的话,那就要在函数体内用这段代码$link=mysqli_connect给$link赋值,这样的话继续封装其他的mysqli函数的时候也要把$link=connect()这段加进去了,那这样每次执行一下函数,都会运行一次mysqli_connect,这样不会增大程序运行起来的开销吗?想请问一下各位大神有没有什么好的解决方法呢? 展开
$link=mysqli_connect(HOST,USER,PWD,DBNAME);
$result=mysqli_query($link,$sql);
if (!$result) {
return $result;
}
else{
$row=mysqli_fetch_array($result,$result_type);
return $row;
}
例如这段代码,这里是要进行一个记录的查询,由于mysqli_query()中需要$link这个参数,那我要是封装成fetch()这个函数的话,那就要在函数体内用这段代码$link=mysqli_connect给$link赋值,这样的话继续封装其他的mysqli函数的时候也要把$link=connect()这段加进去了,那这样每次执行一下函数,都会运行一次mysqli_connect,这样不会增大程序运行起来的开销吗?想请问一下各位大神有没有什么好的解决方法呢? 展开
1个回答
展开全部
用类
class test{
var $link = null;
public __construct(){
$this->link = mysqli_connect(HOST,USER,PWD,DBNAME);
}
public function fetch($sql,$result_type=MYSQL_ASSOC){
$result=mysqli_query($this->link, $sql);
if (!$result) {
return $result;
}else{
return mysqli_fetch_array($result,$result_type);
}
}
}
$link = new test;
var_dump($link->fetch($sql));
var_dump($link->fetch($sql));
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询