php编写mysql auto_read()方法 要求包含组装查询条件其中WHERE 1 表示永远为真,查询条件只能是比较运算和逻辑运算,通过$all参数确定返回值的信息
时间: 2023-06-13 17:05:38 浏览: 38
下面是一个示例代码,其中使用了 `$where` 变量组装查询条件,同时根据 `$all` 参数确定返回值的信息:
```php
function auto_read($table, $fields, $where, $all=false) {
// 组装查询条件
$where_clause = " WHERE 1";
foreach ($where as $key => $value) {
if (is_array($value)) {
$where_clause .= " AND $key {$value[0]} '{$value[1]}'";
} else {
$where_clause .= " AND $key = '$value'";
}
}
// 组装查询字段
$field_clause = implode(",", $fields);
// 组装查询语句
$query = "SELECT $field_clause FROM $table $where_clause";
// 返回结果
if ($all) {
// 返回所有结果
return mysql_query($query);
} else {
// 返回第一条结果
return mysql_query($query . " LIMIT 1");
}
}
```
使用示例:
```php
// 查询 user 表中名字为 "Tom" 并且年龄大于等于 18 的记录
$where = array(
"name" => "Tom",
"age" => array(">=", 18)
);
$fields = array("id", "name", "age");
$result = auto_read("user", $fields, $where);
// 输出结果
while ($row = mysql_fetch_assoc($result)) {
echo "id: " . $row["id"] . ", name: " . $row["name"] . ", age: " . $row["age"] . "<br>";
}
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)