我正在为我的最新项目使用“medoo”-php/mysql-class ( http://www.medoo.in )。我喜欢这种安静、简单的方式来处理我的 SQL 东西。
但我想知道是否可以根据输入选择表单中的选项更改搜索词。假设我们有搜索选项“用户名”,我们会选择:
$data = $database->select("account", [
"user_name",
"user_id",
"phone",
"email",
"age"], [
"user_name" => $_POST['user_name']]);
到目前为止还好。现在我们得到了搜索选项“user by ID”。其他一切都保持不变。所以我只需要
["user_name" => $_POST['user_name']]);
就像
["user_id" => $_POST['user_id']]);
有没有办法改变这一点,而无需再次编写整个语句?
这只是一个例子。此外,对于我的项目,我需要更改查询的其他选项,例如更新插入或不同的连接选项。但目前我对这个问题的答案很满意。
无论如何,您对 Medoo 级有何看法。有什么很酷的替代类解决方案适合我吗?基本上我知道如何使用 SQL 查询,但最后将数据放入数组总是让我发疯。所以我希望通过类(class)更快、更轻松地获得知识。
非常感谢您的帮助! 最好的,洛克斯
最佳答案
您可以在运行查询之前更改 $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
);
关于php - Medoo php sql - 更改搜索词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29287263/