作为使用thinkphp框架,有mysql表结构”surface,field“,数据为:"pg_inquiry_detail tenure_type pg_inquiry type pg_inquiry_detail size pg_return_price assessment_all_value pg_inquiry_detail construct_price pg_inquiry_detail is_over2year pg_inquiry evaluate_purpose pg_return_price education_surcharges pg_return_price urban_construction_tax pg_return_price stamp_duty" ;需求:surface为表名,field为字段名,如何取出相对应的值,放到数组中,用php实现。
时间: 2023-10-16 16:07:21 浏览: 50
可以使用 ThinkPHP 的查询构建器(Query Builder)来实现查询操作,如下所示:
```php
// 获取表名和字段名的数组
$table = 'surface';
$fields = ['tenure_type', 'pg_inquiry_type', 'size', 'assessment_all_value', 'construct_price', 'is_over2year', 'evaluate_purpose', 'education_surcharges', 'urban_construction_tax', 'stamp_duty'];
// 构建查询语句
$query = Db::table($table)->field($fields)->select();
// 将查询结果放入数组中
$result = [];
foreach ($query as $row) {
$item = [];
foreach ($fields as $field) {
$item[$field] = $row[$field];
}
$result[] = $item;
}
// 输出结果
var_dump($result);
```
以上代码会查询 surface 表中指定字段的所有记录,并将结果放入数组中,输出结果类似于:
```
array(1) {
[0]=>
array(10) {
["tenure_type"]=>
string(11) "pg_inquiry"
["pg_inquiry_type"]=>
string(11) "pg_inquiry"
["size"]=>
string(11) "pg_inquiry"
["assessment_all_value"]=>
string(18) "pg_inquiry_detail"
["construct_price"]=>
string(18) "pg_inquiry_detail"
["is_over2year"]=>
string(18) "pg_inquiry_detail"
["evaluate_purpose"]=>
string(16) "pg_return_price"
["education_surcharges"]=>
string(16) "pg_return_price"
["urban_construction_tax"]=>
string(16) "pg_return_price"
["stamp_duty"]=>
string(16) "pg_return_price"
}
}
```
注意,以上代码仅供参考,实际应用中需要根据具体需求进行适当调整和优化。