mirror of
https://codeberg.org/vlw/php-mysql.git
synced 2025-09-14 08:43:40 +02:00
feat: remove table model by passing null
to with()
(#19)
* feat: remove table model by passing null to with() * feat(doc): add with() in README
This commit is contained in:
parent
13720e772e
commit
eed7a470ed
2 changed files with 18 additions and 2 deletions
12
README.md
12
README.md
|
@ -40,7 +40,7 @@ Statement|Method
|
||||||
`ORDER BY`|[`order()`](#order-by)
|
`ORDER BY`|[`order()`](#order-by)
|
||||||
`LIMIT`|[`limit()`](#limit)
|
`LIMIT`|[`limit()`](#limit)
|
||||||
|
|
||||||
---
|
----
|
||||||
|
|
||||||
`Example table name: beverages`
|
`Example table name: beverages`
|
||||||
id|beverage_type|beverage_name|beverage_size
|
id|beverage_type|beverage_name|beverage_size
|
||||||
|
@ -282,3 +282,13 @@ $coffee = $db->for("beverages")->limit([3 => 2])->select(["beverage_name", "beve
|
||||||
// ...etc
|
// ...etc
|
||||||
]
|
]
|
||||||
```
|
```
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
# Restrict affected/returned database columns to table model
|
||||||
|
|
||||||
|
Chain and pass an array to `MySQL->with()` before a `select()`, `update()`, or `insert()` method to limit which columns will be returned/affected. It will use the **values** of the array so it can be either sequential or associative.
|
||||||
|
|
||||||
|
**This method will cause `select()`, `update()`, and `insert()` to ignore any columns that are not present in the passed table model.**
|
||||||
|
|
||||||
|
You can remove an already set table model by passing `null` to `MySQL->with()`
|
||||||
|
|
|
@ -48,7 +48,13 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
// Restrict query to array of column names
|
// Restrict query to array of column names
|
||||||
public function with(array $model): self {
|
public function with(?array $model = null): self {
|
||||||
|
// Remove table model if empty
|
||||||
|
if (!$model) {
|
||||||
|
$this->model = null;
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
// Reset table model
|
// Reset table model
|
||||||
$this->model = [];
|
$this->model = [];
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue