Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ## Collections
- ### - Map
- Map recorrer un objeto o array y retornar el campo definido en `$func` en este proceso si se requiere se puede aplicar una operación a ese campo y despues retornarlo.(Transforma una array en otro array).
- | Parametro | Descripción|
- |-----------|------------|
- | $items | Array |
- | $func | La acción a realizar a un item(es una función anonima)|
- ```php
- function map($items, $func)
- {
- $results = [];
- foreach ($items as $item) {
- $results[] = $func($item);
- }
- return $results;
- }
- ```
- Ejemplos:
- ```php
- // 1.-
- $customerEmails = map($customers, function ($customer) {
- return $customer->email;
- });
- // 2.-
- $stockTotals = map($inventoryItems, function ($item) {
- return [
- 'product' => $item->productName,
- 'total_value' => $item->quantity * $item->price,
- ];
- });
- // 3.-
- $displayPrices = map($prices, function ($price) {
- return '$' . number_format($price / 100, 2);
- });
- ```
- ### - Each
- Each no esta para devolver campos o información. este, esta hecho para realizar acciones sobre los items seleccionados como por ejemplo: `borrar`, `enviar correo`, etc. Reglas a considerar para usar Each:
- 1. si el callback no retorna nada
- 2. No se efectua ninguna operacion con el valor de retorno
- 3. Solo intenta realizar una acción sobre cada elemento del Array
- | Parametro | Descripción|
- |-----------|------------|
- | $items | Array |
- | $func | La acción a realizar a un item(es una función anonima)|
- ```php
- function each($items, $func)
- {
- foreach ($items as $item) {
- $func($item);
- }
- }
- ```
- Ejemplos:
- ```php
- each($productsToDelete, function ($product) {
- $product->delete();
- });
- ```
- ### - Filter
- Como su nombre lo dice, no sirve para filtrar elementos de un Array y al finalizar se genera un Array nuevo. Filter retorna un array con los elementos del array original sin o con los que si aplico el filtro.
- | Parametro | Descripción|
- |-----------|------------|
- | $items | Array |
- | $func | Funcion que realiza el filtrado(es una función anonima)|
- ```php
- function filter($items, $func)
- {
- $result = [];
- foreach ($items as $item) {
- if ($func($item)) {
- $result[] = $item;
- }
- }
- return $result;
- }
- ```
- ejemplos:
- ```php
- // 1.-
- $outOfStockProducts = filter($products, function ($product) {
- return $product->isOutOfStock();
- });
- // 2.-
- $expensiveProducts = filter($products, function ($product) {
- return $product->price > 100;
- });
- ```
Add Comment
Please, Sign In to add comment