改进Query类的field方法

This commit is contained in:
thinkphp
2016-05-21 11:38:18 +08:00
parent 25981119ad
commit f3aceca2b0
2 changed files with 4 additions and 4 deletions

View File

@@ -85,7 +85,7 @@ abstract class Builder
if ('*' == $options['field']) {
$fields = array_keys($bind);
} else {
$fields = is_array($options['field']) ? $options['field'] : array_map('trim', explode(',', $options['field']));
$fields = $options['field'];
}
$result = [];
@@ -567,7 +567,7 @@ abstract class Builder
if ('*' == $options['field']) {
$fields = $this->query->getTableInfo($options['table'], 'fields');
} else {
$fields = is_array($options['field']) ? $options['field'] : array_map('trim', explode(',', $options['field']));
$fields = $options['field'];
}
foreach ($dataSet as &$data) {

View File

@@ -602,12 +602,12 @@ class Query
return $this;
}
if (is_string($field)) {
$field = explode(',', $field);
$field = array_map('trim', explode(',', $field));
}
if (true === $field) {
// 获取全部字段
$fields = $this->getTableInfo($tableName, 'fields');
$field = $fields ?: '*';
$field = $fields ?: ['*'];
} elseif ($except) {
// 字段排除
$fields = $this->getTableInfo($tableName, 'fields');