support arrêt de each()
This commit is contained in:
parent
6238e0b9ff
commit
f221342c09
@ -366,13 +366,14 @@ class CapacitorChannel implements ITransactor {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* méthode appelée lors du parcours des éléments avec
|
* méthode appelée lors du parcours des éléments avec {@link Capacitor::each()}
|
||||||
* {@link Capacitor::each()}
|
|
||||||
*
|
*
|
||||||
* @param ?array $row la ligne courante. l'élément courant est accessible via
|
* @param ?array $row la ligne courante. l'élément courant est accessible via
|
||||||
* $row["item"]
|
* $row["item"]
|
||||||
* @return ?array le cas échéant, un tableau non null utilisé pour mettre à
|
* @return ?array le cas échéant, un tableau non null utilisé pour mettre à
|
||||||
* jour la ligne courante
|
* jour la ligne courante
|
||||||
|
* Retourner [false] pour arrêter le parcours des éléments (la ligne courante
|
||||||
|
* ainsi que les autres lignes ne sont plus mise à jour)
|
||||||
*
|
*
|
||||||
* - Il est possible de mettre à jour $item en le retourant avec la clé "item"
|
* - Il est possible de mettre à jour $item en le retourant avec la clé "item"
|
||||||
* - La clé primaire (il s'agit généralement de "id_") ne peut pas être
|
* - La clé primaire (il s'agit généralement de "id_") ne peut pas être
|
||||||
|
@ -661,7 +661,9 @@ abstract class CapacitorStorage {
|
|||||||
foreach ($rows as $row) {
|
foreach ($rows as $row) {
|
||||||
$rowIds = $this->getRowIds($channel, $row);
|
$rowIds = $this->getRowIds($channel, $row);
|
||||||
$updates = $onEach->invoke([$row, ...$args]);
|
$updates = $onEach->invoke([$row, ...$args]);
|
||||||
if (is_array($updates) && $updates) {
|
if ($updates === [false]) {
|
||||||
|
break;
|
||||||
|
} elseif ($updates !== null) {
|
||||||
if (!array_key_exists("modified_", $updates)) {
|
if (!array_key_exists("modified_", $updates)) {
|
||||||
$updates["modified_"] = date("Y-m-d H:i:s");
|
$updates["modified_"] = date("Y-m-d H:i:s");
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user