你能把查询放到函数中吗?

时间:2015-02-26 18:33:31

标签: php database mysqli

我正在使用数据库,并尝试创建一个影院预订网站,客户可以输入他们的详细信息来执行订单,我想分离查询客户详细信息和性能详细信息等。我可以使用函数来分隔它出来吗?或者我是否采取了错误的方式?这是我到目前为止所做的。

<?php
$connectdb = mysqli_connect("host", "username", "password", "database")
        or die("Error ".mysqli_connect_error($connectdb));

function customerDetails(){
    mysqli_query($connectdb, "QUERY GOES HERE");
}


mysqli_close($connectdb);

非常感谢!

1 个答案:

答案 0 :(得分:0)

这里的问题是变量$connectdb是在全局范围内定义的(在任何函数之外),要在函数中使用它,您需要使用global关键字导入它:

function customerDetails(){
    global $connectdb;
    mysqli_query($connectdb, "QUERY GOES HERE");
}

创建检索数据的函数很好,主要是因为它抽象代码并使其可重用。那就是:你可以在多个页面中调用customerDetails(),如果有一天你想从MySQL切换到MongoDB(例如),你只需要更新该功能。它在运行时并不是出于性能原因(实际上,没有功能它应该略微更快),但它使开发更加容易和有效(并且具有成本效益)。