我使用的是"medoo"-php/mysql类(http://www.medoo.in)我最近的项目。我喜欢用这种简单的方式来处理我的SQL。
但我想知道是否可以根据输入选择表单中的选项更改搜索词。假设我们有搜索选项"用户名",我们将使用:
$data = $database->select("account", [
"user_name",
"user_id",
"phone",
"email",
"age"], [
"user_name" => $_POST['user_name']]);
到目前为止还好。现在我们得到了搜索选项"用户ID"。其他一切都保持不变。所以我只需要
["user_name" => $_POST['user_name']]);
像
["user_id" => $_POST['user_id']]);
有没有办法在不重新写下整个声明的情况下改变这一点?
这只是一个例子。此外,对于我的项目,我需要更改查询的其他选项,如更新以插入或不同的联接选项。但就目前而言,我对这个问题的答案很满意。
不管怎样,你觉得梅度课怎么样。有什么很酷的替代类解决方案给我吗?基本上,我知道如何使用SQL查询,但最后把东西送到数组总是让我抓狂。所以我很想在课堂上更快更容易地学习。
非常感谢你的帮助!最佳,Lox
您可以在运行以下查询之前更改$where数组:
if ($type == 'id')
{
$where = ["user_id" => $_POST['user_id']];
}
if ($type == 'user_name')
{
$where = ["user_name" => $_POST['user_name']];
}
$data = $database->select("account",
[
"user_name",
"user_id",
"phone",
"email",
"age"
],
$where
);