Lodash-PHP es una adaptación de la biblioteca Lodash JS a PHP. Es un conjunto de funciones de utilidad fáciles de usar para proyectos PHP cotidianos.
Lodash-PHP intenta imitar lodash.js lo más cerca posible
Lodash-PHP requiere un mínimo de PHP 7.2+, pero siempre se recomienda la última versión de PHP.
Instale Lodash-PHP a través del compositor:
$ composer require lodash-php/lodash-php
Cada método en Lodash-PHP es una función separada que puede importarse y usarse por sí sola.
<?php
use function _ each ;
each ([ 1 , 2 , 3 ], function ( int $ item ) {
var_dump ( $ item );
});
Lodash-PHP también viene con una clase _
global que se puede usar globalmente.
<?php
_:: each ([ 1 , 2 , 3 ], function ( int $ item ) {
var_dump ( $ item );
});
Crea una matriz de elementos divididos en grupos de la longitud del size
. Si array
no se puede dividir en partes iguales, el fragmento final serán los elementos restantes.
Argumentos:
@param array $array array El array a procesar.
@param int $número [tamaño=1] La longitud de cada fragmento
Devolver:
@return array Devuelve la nueva matriz de fragmentos.
Ejemplo:
<?php
use function _ chunk ;
chunk ([ ' a ' , ' b ' , ' c ' , ' d ' ], 2 )
// => [['a', 'b'], ['c', 'd']]
chunk ([ ' a ' , ' b ' , ' c ' , ' d ' ], 3 )
// => [['a', 'b', 'c'], ['d']]
Crea una matriz con todos los valores falsos eliminados. Los valores false
, null
, 0
, ""
, undefined
y NaN
son falsos.
Argumentos:
@param array $array La matriz a compactar.
Devolver:
@return array Devuelve la nueva matriz de valores filtrados.
Ejemplo:
<?php
use function _ compact ;
compact ([ 0 , 1 , false , 2 , '' , 3 ])
// => [1, 2, 3]
Crea una nueva matriz que concatena array
con matrices y/o valores adicionales.
Argumentos:
@param array $array La matriz a concatenar.
@param array<int, Mixed> $values Los valores a concatenar.
Devolver:
@return array Devuelve la nueva matriz concatenada.
Ejemplo:
<?php
use function _ concat ;
$ array = [ 1 ];
$ other = concat ( $ array , 2 , [ 3 ], [[ 4 ]]);
var_dump ( $ other )
// => [1, 2, 3, [4]]
var_dump ( $ array )
// => [1]
Crea una matriz de valores array
no incluidos en las otras matrices dadas usando SameValueZero
para comparaciones de igualdad. El orden y las referencias de los valores de los resultados están determinados por la primera matriz.
Nota: a diferencia de pullAll
, este método devuelve una nueva matriz.
Argumentos:
@param array $array La matriz a inspeccionar.
@param array ...$values Los valores a excluir.
Devolver:
@return array Devuelve la nueva matriz de valores filtrados.
Ejemplo:
<?php
use function _ difference ;
difference ([ 2 , 1 ], [ 2 , 3 ])
// => [1]
Este método es similar a difference
excepto que acepta iteratee
que se invoca para cada elemento de array
y values
para generar el criterio mediante el cual se comparan. El orden y las referencias de los valores de los resultados están determinados por la primera matriz. El iterado se invoca con un argumento: (valor).
Nota: a diferencia de pullAllBy
, este método devuelve una nueva matriz.
Argumentos:
@param array $array La matriz a inspeccionar.
@param array<int, Mixed> ...$values Los valores a excluir.
@param callable $iteratee El iterado invocado por elemento.
Devolver:
@return array Devuelve la nueva matriz de valores filtrados.
Ejemplo:
<?php
use function _ differenceBy ;
differenceBy ([ 2.1 , 1.2 ], [ 2.3 , 3.4 ], ' floor ' )
// => [1.2]
Este método es similar a difference
excepto que acepta comparator
que se invoca para comparar elementos de array
con values
. El orden y las referencias de los valores de los resultados están determinados por la primera matriz. El comparador se invoca con dos argumentos: (arrVal, othVal).
Nota: a diferencia de pullAllWith
, este método devuelve una nueva matriz.
Argumentos:
@param array<int, Mixed> $array La matriz a inspeccionar.
@param array ...$values Los valores a excluir.
@param callable $comparator El comparador invocado por elemento.
Devolver:
@return array Devuelve la nueva matriz de valores filtrados.
Ejemplo:
<?php
use function _ differenceWith ;
$ objects = [[ ' x ' => 1 , ' y ' => 2 ], [ ' x ' => 2 , ' y ' => 1 ]]
differenceWith ( $ objects , [[ ' x ' => 1 , ' y ' => 2 ]], ' _::isEqual ' )
// => [[ 'x' => 2, 'y' => 1 ]]
Crea una porción de array
con n
elementos eliminados desde el principio.
NOTA: Esta función reordenará y restablecerá los índices de la matriz.
Argumentos:
@param array $array La matriz a consultar.
@param int $n El número de elementos que se eliminarán.
Devolver:
@return matriz la porción de array
.
Ejemplo:
<?php
use function _ drop ;
drop ([ 1 , 2 , 3 ])
// => [2, 3]
drop ([ 1 , 2 , 3 ], 2 )
// => [3]
drop ([ 1 , 2 , 3 ], 5 )
// => []
drop ([ 1 , 2 , 3 ], 0 )
// => [1, 2, 3]
Crea una porción de array
con n
elementos eliminados desde el final. NOTA: Esta función reordenará y restablecerá los índices de la matriz.
Argumentos:
@param array $array La matriz a consultar.
@param int $n El número de elementos que se eliminarán.
Devolver:
@return matriz la porción de array
.
Ejemplo:
<?php
use function _ dropRight ;
dropRight ([ 1 , 2 , 3 ])
// => [1, 2]
dropRight ([ 1 , 2 , 3 ], 2 )
// => [1]
dropRight ([ 1 , 2 , 3 ], 5 )
// => []
dropRight ([ 1 , 2 , 3 ], 0 )
// => [1, 2, 3]
Crea una porción de array
excluyendo los elementos eliminados desde el final. Los elementos se eliminan hasta que predicate
devuelva falsey. El predicado se invoca con tres argumentos: (valor, índice, matriz).
Argumentos:
@param array $array La matriz a consultar.
@param callable $predicate La función invocada por iteración.
Devolver:
@return matriz la porción de array
.
Ejemplo:
<?php
use function _ dropRightWhile ;
$ users = [
[ ' user ' => ' barney ' , ' active ' => false ],
[ ' user ' => ' fred ' , ' active ' => true ],
[ ' user ' => ' pebbles ' , ' active ' => true ]
]
dropRightWhile ( $ users , function ( $ user ) { return $ user [ ' active ' ]; })
// => objects for ['barney']
Crea una porción de array
excluyendo los elementos eliminados desde el principio. Los elementos se eliminan hasta que predicate
devuelva falsey. El predicado se invoca con tres argumentos: (valor, índice, matriz).
Argumentos:
@param array $array La matriz a consultar.
@param callable $predicate La función invocada por iteración.
Devolver:
@return matriz la porción de array
.
Ejemplo:
<?php
use function _ dropWhile ;
$ users = [
[ ' user ' => ' barney ' , ' active ' => true ],
[ ' user ' => ' fred ' , ' active ' => true ],
[ ' user ' => ' pebbles ' , ' active ' => false ]
]
dropWhile ( $ users , function ( $ user ) { return $ user [ ' active ' ]; } )
// => objects for ['pebbles']
Comprueba si predicate
devuelve verdadero para todos los elementos de array
. La iteración se detiene una vez que predicate
devuelve falsey. El predicado se invoca con tres argumentos: (valor, índice, matriz).
Nota: Este método devuelve true
para matrices vacías porque todo es cierto para elementos de matrices vacías.
Argumentos:
@param iterable $collection La matriz sobre la que se va a iterar.
@param callable $predicate La función invocada por iteración.
Devolver:
@return bool true
si todos los elementos pasan la verificación de predicado; en caso contrario, false
.
Ejemplo:
<?php
use function _ every ;
every ([ true , 1 , null , ' yes ' ], function ( $ value ) { return is_bool ( $ value );})
// => false
$ users = [
[ ' user ' => ' barney ' , ' age ' => 36 , ' active ' => false ],
[ ' user ' => ' fred ' , ' age ' => 40 , ' active ' => false ],
];
// The `matches` iteratee shorthand.
$ this -> assertFalse ( every ( $ users , [ ' user ' => ' barney ' , ' active ' => false ]));
// false
// The `matchesProperty` iteratee shorthand.
$ this -> assertTrue ( every ( $ users , [ ' active ' , false ]));
// true
// The `property` iteratee shorthand.
$ this -> assertFalse ( every ( $ users , ' active ' ));
//false
Este método es como find
, excepto que devuelve el índice del primer elemento. El predicado devuelve la verdad en lugar del elemento en sí.
Argumentos:
@param array $array La matriz a inspeccionar.
@param callable $predicate La función invocada por iteración.
@param int $fromIndex El índice desde el que buscar.
Devolver:
@return int el índice del elemento encontrado, de lo contrario -1
.
Ejemplo:
<?php
use function _ findIndex ;
$ users = [
[ ' user ' => ' barney ' , ' active ' => false ],
[ ' user ' => ' fred ' , ' active ' => false ],
[ ' user ' => ' pebbles ' , ' active ' => true ],
];
findIndex ( $ users , function ( $ o ) { return $ o [ ' user ' ] s== ' barney ' ; });
// => 0
// The `matches` iteratee shorthand.
findIndex ( $ users , [ ' user ' => ' fred ' , ' active ' => false ]);
// => 1
// The `matchesProperty` iteratee shorthand.
findIndex ( $ users , [ ' active ' , false ]);
// => 0
// The `property` iteratee shorthand.
findIndex ( $ users , ' active ' );
// => 2
Este método es como findIndex
excepto que itera sobre los elementos de collection
de derecha a izquierda.
Argumentos:
@param array $array La matriz a inspeccionar.
@param mixto $predicate La función invocada por iteración.
@param int $fromIndex El índice desde el que buscar.
Devolver:
@return int el índice del elemento encontrado, de lo contrario -1
.
Ejemplo:
<?php
use function _ findLastIndex ;
$ users = [
[ ' user ' => ' barney ' , ' active ' => true ],
[ ' user ' => ' fred ' , ' active ' => false ],
[ ' user ' => ' pebbles ' , ' active ' => false ]
]
findLastIndex ( $ users , function ( $ user ) { return $ user [ ' user ' ] === ' pebbles ' ; })
// => 2
Aplana array
a un solo nivel de profundidad.
Argumentos:
@param array $array La matriz a aplanar.
Devolver:
@return array la nueva matriz aplanada.
Ejemplo:
<?php
use function _ flatten ;
flatten ([ 1 , [ 2 , [ 3 , [ 4 ]], 5 ]])
// => [1, 2, [3, [4]], 5]
Aplana recursivamente array
.
Argumentos:
@param array $array La matriz a aplanar.
Devolver:
@return array Devuelve la nueva matriz aplanada.
Ejemplo:
<?php
use function _ flattenDeep ;
flattenDeep ([ 1 , [ 2 , [ 3 , [ 4 ]], 5 ]]);
// => [1, 2, 3, 4, 5]
Aplana recursivamente array
hasta tiempos depth
.
Argumentos:
@param array $array La matriz a aplanar.
@param int $profundidad La profundidad máxima de recursividad.
Devolver:
@return array la nueva matriz aplanada.
Ejemplo:
<?php
use function _ flattenDepth ;
$ array = [ 1 , [ 2 , [ 3 , [ 4 ]], 5 ]]
flattenDepth ( $ array , 1 )
// => [1, 2, [3, [4]], 5]
flattenDepth ( $ array , 2 )
// => [1, 2, 3, [4], 5]
Lo inverso de toPairs
, este método devuelve un objeto compuesto por pairs
clave-valor.
Argumentos:
@param array $pairs Los pares clave-valor.
Devolver:
@return stdClass el nuevo objeto.
Ejemplo:
<?php
use function _ fromPairs ;
fromPairs ([[ ' a ' , 1 ], [ ' b ' , 2 ]])
// => stdClass(
// 'a' => 1,
//'b' => 2,
// )
Obtiene el primer elemento de array
.
Argumentos:
@param array $array La matriz a consultar.
Devolver:
@return mixto Devuelve el primer elemento de array
.
Ejemplo:
<?php
use function _ head ;
head ([ 1 , 2 , 3 ])
// => 1
head ([])
// => null
Obtiene el índice en el que se encuentra la primera aparición del value
en array
utilizando SameValueZero
para comparaciones de igualdad. Si fromIndex
es negativo, se usa como desplazamiento desde el final de array
.
Argumentos:
@param array $array La matriz a inspeccionar.
@param mixto $valor El valor a buscar.
@param int $fromIndex El índice desde el que buscar.
Devolver:
@return int el índice del valor coincidente, de lo contrario -1
.
Ejemplo:
<?php
use function _ indexOf ;
indexOf ([ 1 , 2 , 1 , 2 ], 2 )
// => 1
// Search from the `fromIndex`.
indexOf ([ 1 , 2 , 1 , 2 ], 2 , 2 )
// => 3
Obtiene todos menos el último elemento de array
.
Argumentos:
@param array $array La matriz a consultar.
Devolver:
@return matriz la porción de array
.
Ejemplo:
<?php
use function _ initial ;
initial ([ 1 , 2 , 3 ])
// => [1, 2]
Crea una matriz de valores únicos que se incluyen en todas las matrices dadas usando SameValueZero
para comparaciones de igualdad. El orden y las referencias de los valores de los resultados están determinados por la primera matriz.
Argumentos:
@param matriz ... $ matrices
Devolver:
@return array la nueva matriz de valores que se cruzan.
Ejemplo:
<?php
use function _ intersection ;
intersection ([ 2 , 1 ], [ 2 , 3 ])
// => [2]
Este método es como intersection
excepto que acepta iteratee
que se invoca para cada elemento de cada arrays
para generar el criterio por el cual se comparan. El orden y las referencias de los valores de los resultados están determinados por la primera matriz. El iterado se invoca con un argumento: (valor).
Argumentos:
@param matriz<int, mixto> ...$arrays
@param callable $iteratee El iterado invocado por elemento.
Devolver:
@return array la nueva matriz de valores que se cruzan.
Ejemplo:
<?php
use function _ intersectionBy ;
intersectionBy ([ 2.1 , 1.2 ], [ 2.3 , 3.4 ], Math.floor)
// => [2.1]
// The `property` iteratee shorthand.
intersectionBy ([[ ' x ' => 1 ]], [[ ' x ' => 2 ], [ ' x ' => 1 ]], ' x ' );
// => [[ 'x' => 1 ]]
Este método es como intersection
excepto que acepta comparator
que se invoca para comparar elementos de arrays
. El orden y las referencias de los valores de los resultados están determinados por la primera matriz. El comparador se invoca con dos argumentos: (arrVal, othVal).
Argumentos:
@param matriz ... $ matrices
@param callable $comparator El comparador invocado por elemento.
Devolver:
@return array la nueva matriz de valores que se cruzan.
Ejemplo:
<?php
use function _ intersectionWith ;
$ objects = [[ ' x ' => 1 , ' y ' => 2 ], [ ' x ' => 2 , ' y ' => 1 ]]
$ others = [[ ' x ' => 1 , ' y ' => 1 ], [ ' x ' => 1 , ' y ' => 2 ]]
intersectionWith ( $ objects , $ others , ' _::isEqual ' )
// => [[ 'x' => 1, 'y' => 2 ]]
Obtiene el último elemento de array
.
Argumentos:
@param array $array La matriz a consultar.
Devolver:
@return mixto Devuelve el último elemento de array
.
Ejemplo:
<?php
use function _ last ;
last ([ 1 , 2 , 3 ])
// => 3
Este método es como indexOf
excepto que itera sobre los elementos de array
de derecha a izquierda.
Argumentos:
@param array $array La matriz a inspeccionar.
@param mixto $valor El valor a buscar.
@param int $fromIndex El índice desde el que buscar.
Devolver:
@return int el índice del valor coincidente, de lo contrario -1
.
Ejemplo:
<?php
use function _ lastIndexOf ;
lastIndexOf ([ 1 , 2 , 1 , 2 ], 2 )
// => 3
// Search from the `fromIndex`.
lastIndexOf ([ 1 , 2 , 1 , 2 ], 2 , 2 )
// => 1
Obtiene el elemento en el índice n
de array
. Si n
es negativo, se devuelve el enésimo elemento desde el final.
Argumentos:
@param array $array La matriz a consultar.
@param int $n El índice del elemento a devolver.
Devolver:
@return mixto Devuelve el enésimo elemento de array
.
Ejemplo:
<?php
use function _ nth ;
$ array = [ ' a ' , ' b ' , ' c ' , ' d ' ]
nth ( $ array , 1 )
// => 'b'
nth ( $ array , - 2 )
// => 'c'
Elimina todos los valores dados de array
usando SameValueZero
para comparaciones de igualdad.
Nota: A diferencia de without
, este método muta array
. Utilice remove
para eliminar elementos de una matriz por predicado.
Argumentos:
@param array $array La matriz a modificar.
@param array<int, string> $values Los valores a eliminar.
Devolver:
@matriz de retorno
Ejemplo:
<?php
use function _ pull ;
$ array = [ ' a ' , ' b ' , ' c ' , ' a ' , ' b ' , ' c ' ]
pull ( $ array , ' a ' , ' c ' )
var_dump ( $ array )
// => ['b', 'b']
Este método es como pull
excepto que acepta una serie de valores para eliminar.
Nota: a diferencia de difference
, este método muta array
.
Argumentos:
@param array $array La matriz a modificar.
@param array $values Los valores a eliminar.
Devolver:
@return array
matriz.
Ejemplo:
<?php
use function _ pullAll ;
$ array = [ ' a ' , ' b ' , ' c ' , ' a ' , ' b ' , ' c ' ]
pullAll ( $ array , [ ' a ' , ' c ' ])
var_dump ( $ array )
// => ['b', 'b']
Este método es como pullAll
excepto que acepta iteratee
, que se invoca para cada elemento de array
y values
para generar el criterio mediante el cual se comparan. El iterado se invoca con un argumento: (valor).
Nota: A diferencia de differenceBy
, este método muta array
.
Argumentos:
@param array $array La matriz a modificar.
@param array $values Los valores a eliminar.
@param callable $iteratee El iterado invocado por elemento.
Devolver:
@return array
matriz.
Ejemplo:
<?php
use function _ pullAllBy ;
$ array = [[ ' x ' => 1 ], [ ' x ' => 2 ], [ ' x ' => 3 ], [ ' x ' => 1 ]]
pullAllBy ( $ array , [[ ' x ' => 1 ], [ ' x ' => 3 ]], ' x ' )
var_dump ( $ array )
// => [[ 'x' => 2 ]]
Este método es como pullAll
excepto que acepta comparator
que se invoca para comparar elementos de array
con values
. El comparador se invoca con dos argumentos: (arrVal, othVal).
Nota: A diferencia de differenceWith
, este método muta array
.
Argumentos:
@param array $array La matriz a modificar.
@param array $values Los valores a eliminar.
@param callable $comparator El comparador invocado por elemento.
Devolver:
@return array
matriz.
Ejemplo:
<?php
use function _ pullAllWith ;
$ array = [[ ' x ' => 1 , ' y ' => 2 ], [ ' x ' => 3 , ' y ' => 4 ], [ ' x ' => 5 , ' y ' => 6 ]]
pullAllWith ( $ array , [[ ' x ' => 3 , ' y ' => 4 ]], ' _isEqual ' )
var_dump ( $ array )
// => [[ 'x' => 1, 'y' => 2 ], [ 'x' => 5, 'y' => 6 ]]
Elimina elementos de array
correspondiente a indexes
y devuelve una matriz de elementos eliminados.
Nota: a diferencia de at
, este método muta array
.
Argumentos:
@param array $array La matriz a modificar.
@param (int | int[]) $indexes Los índices de los elementos a eliminar.
Devolver:
@return array la nueva matriz de elementos eliminados.
Ejemplo:
<?php
use function _ pullAt ;
$ array = [ ' a ' , ' b ' , ' c ' , ' d ' ]
$ pulled = pullAt ( $ array , [ 1 , 3 ])
var_dump ( $ array )
// => ['a', 'c']
var_dump ( $ pulled )
// => ['b', 'd']
Elimina todos los elementos de array
cuyo predicate
devuelve verdadero y devuelve una matriz de los elementos eliminados. El predicado se invoca con tres argumentos: (valor, índice, matriz).
Nota: a diferencia filter
, este método muta array
. Utilice pull
para extraer elementos de una matriz por valor.
Argumentos:
@param array $array La matriz a modificar.
@param callable $predicate La función invocada por iteración.
Devolver:
@return array la nueva matriz de elementos eliminados.
Ejemplo:
<?php
use function _ remove ;
$ array = [ 1 , 2 , 3 , 4 ]
$ evens = remove ( $ array , function ( $ n ) { return $ n % 2 === 0 ; })
var_dump ( $ array )
// => [1, 3]
var_dump ( $ evens )
// => [2, 4]
Obtiene un elemento aleatorio de array
.
Argumentos:
@param array $array La matriz a muestrear.
Devolver:
@return mixto Devuelve el elemento aleatorio.
Ejemplo:
<?php
use function _ sample ;
sample ([ 1 , 2 , 3 , 4 ])
// => 2
Obtiene n
elementos aleatorios en claves únicas desde array
hasta el tamaño de array
.
Argumentos:
@param array $array La matriz a muestrear.
@param int $n El número de elementos a muestrear.
Devolver:
@return ordena los elementos aleatorios.
Ejemplo:
<?php
use function _ sampleSize ;
sampleSize ([ 1 , 2 , 3 ], 2 )
// => [3, 1]
sampleSize ([ 1 , 2 , 3 ], 4 )
// => [2, 3, 1]
Crea una matriz de valores mezclados.
Argumentos:
@param array $array La matriz que se va a mezclar.
Devolver:
@return array la nueva matriz barajada.
Ejemplo:
<?php
use function _ shuffle ;
shuffle ([ 1 , 2 , 3 , 4 ])
// => [4, 1, 3, 2]
Crea una porción de array
desde start
hasta end
, pero sin incluirlo.
Argumentos:
@param array $array La matriz a dividir.
@param int $start La posición inicial.
@param int $end La posición final.
Devolver:
@return matriz la porción de array
.
Obtiene todos menos el primer elemento de array
.
Argumentos:
@param array $array La matriz a consultar.
Devolver:
@return matriz la porción de array
.
Ejemplo:
<?php
use function _ tail ;
tail ([ 1 , 2 , 3 ])
// => [2, 3]
Crea una porción de array
con n
elementos tomados desde el principio.
Argumentos:
@param array $array La matriz a consultar.
@param int $n El número de elementos a tomar.
Devolver:
@return matriz la porción de array
.
Ejemplo:
<?php
use function _ take ;
take ([ 1 , 2 , 3 ])
// => [1]
take ([ 1 , 2 , 3 ], 2 )
// => [1, 2]
take ([ 1 , 2 , 3 ], 5 )
// => [1, 2, 3]
take ([ 1 , 2 , 3 ], 0 )
// => []
Crea una porción de array
con n
elementos tomados del final.
Argumentos:
@param array $array La matriz a consultar.
@param int $n El número de elementos a tomar.
Devolver:
@return matriz la porción de array
.
Ejemplo:
<?php
use function _ takeRight ;
takeRight ([ 1 , 2 , 3 ])
// => [3]
takeRight ([ 1 , 2 , 3 ], 2 )
// => [2, 3]
takeRight ([ 1 , 2 , 3 ], 5 )
// => [1, 2, 3]
takeRight ([ 1 , 2 , 3 ], 0 )
// => []
Crea una porción de array
con elementos tomados del final. Los elementos se toman hasta que predicate
devuelva falsey. El predicado se invoca con tres argumentos: (valor, índice, matriz).
Argumentos:
@param array $array La matriz a consultar.
@param callable $predicate La función invocada por iteración.
Devolver:
@return matriz la porción de array
.
Ejemplo:
<?php
use function _ takeRightWhile ;
$ users = [
[ ' user ' => ' barney ' , ' active ' => false ],
[ ' user ' => ' fred ' , ' active ' => true ],
[ ' user ' => ' pebbles ' , ' active ' => true ]
];
takeRightWhile ( $ users , function ( $ value ) { return $ value [ ' active ' ]; })
// => objects for ['fred', 'pebbles']
Crea una porción de array
con elementos tomados desde el principio. Los elementos se toman hasta que predicate
devuelva falsey. El predicado se invoca con tres argumentos: (valor, índice, matriz).
Argumentos:
@param array $array La matriz a consultar.
@param mixto $predicate La función invocada por iteración.
Devolver:
@return matriz la porción de array
.
Ejemplo:
<?php
use function _ takeWhile ;
$ users = [
[ ' user ' => ' barney ' , ' active ' => true ],
[ ' user ' => ' fred ' , ' active ' => true ],
[ ' user ' => ' pebbles ' , ' active ' => false ]
]
takeWhile ( $ users , function ( $ value ) { return $ value [ ' active ' ]; })
// => objects for ['barney', 'fred']
Crea una matriz de valores únicos, en orden, a partir de todas las matrices dadas usando SameValueZero
para comparaciones de igualdad.
Argumentos:
@param array ...$arrays Los arreglos a inspeccionar.
Devolver:
@return array la nueva matriz de valores combinados.
Ejemplo:
<?php
use function _ union ;
union ([ 2 ], [ 1 , 2 ])
// => [2, 1]
Este método es similar a union
, excepto que acepta iteratee
que se invoca para cada elemento de cada arrays
para generar el criterio mediante el cual se calcula la unicidad. Los valores de los resultados se eligen de la primera matriz en la que aparece el valor. El iterado se invoca con un argumento: (valor).
Argumentos:
@param array<int, Mixed> ...$arrays Los arreglos a inspeccionar.
@param callable $iteratee El iterado invocado por elemento.
Devolver:
@return array la nueva matriz de valores combinados.
Ejemplo:
<?php
use function _ unionBy ;
unionBy ([ 2.1 ], [ 1.2 , 2.3 ], ' floor ' )
// => [2.1, 1.2]
// The `_::property` iteratee shorthand.
unionBy ([[ ' x ' => 1 ]], [[ ' x ' => 2 ], [ ' x ' => 1 ]], ' x ' );
// => [['x' => 1], ['x' => 2]]
Este método es como union
excepto que acepta comparator
que se invoca para comparar elementos de arrays
. Los valores de los resultados se eligen de la primera matriz en la que aparece el valor. El comparador se invoca con dos argumentos: (arrVal, othVal).
Argumentos:
@param array<int, Mixed> ...$arrays Los arreglos a inspeccionar.
@param callable $comparator El comparador invocado por elemento.
Devolver:
@return array la nueva matriz de valores combinados.
Ejemplo:
<?php
use function _ unionWith ;
$ objects = [[ ' x ' => 1 , ' y ' => 2 ], [ ' x ' => 2 , ' y ' => 1 ]]
$ others = [[ ' x ' => 1 , ' y ' => 1 ], [ ' x ' => 1 , ' y ' => 2 ]]
unionWith ( $ objects , $ others , ' _::isEqual ' )
// => [['x' => 1, 'y' => 2], ['x' => 2, 'y' => 1], ['x' => 1, 'y' => 1]]
Crea una versión libre de duplicados de una matriz, utilizando SameValueZero
para comparaciones de igualdad, en la que solo se mantiene la primera aparición de cada elemento. El orden de los valores de los resultados está determinado por el orden en que aparecen en la matriz.
Argumentos:
@param array $array La matriz a inspeccionar.
Devolver:
@return array la nueva matriz libre duplicada.
Ejemplo:
<?php
use function _ uniq ;
uniq ([ 2 , 1 , 2 ])
// => [2, 1]s
Este método es como uniq
excepto que acepta iteratee
que se invoca para cada elemento de array
para generar el criterio mediante el cual se calcula la unicidad. El orden de los valores de los resultados está determinado por el orden en que aparecen en la matriz. El iterado se invoca con un argumento: (valor).
Argumentos:
@param array $array La matriz a inspeccionar.
@param mixto $iteratee El iterado invocado por elemento.
Devolver:
@return array la nueva matriz libre duplicada.
Ejemplo:
<?php
use function _ uniqBy ;
uniqBy ([ 2.1 , 1.2 , 2.3 ], ' floor ' )
// => [2.1, 1.2]
Este método es como uniq
excepto que acepta comparator
que se invoca para comparar elementos de array
. El orden de los valores de los resultados está determinado por el orden en que aparecen en la matriz. El comparador se invoca con dos argumentos: (arrVal, othVal).
Argumentos:
@param array $array La matriz a inspeccionar.
@param callable $comparator El comparador invocado por elemento.
Devolver:
@return array la nueva matriz libre duplicada.
Ejemplo:
<?php
use function _ uniqWith ;
$ objects = [[ ' x ' => 1 , ' y ' => 2 ], [ ' x ' => 2 , ' y ' => 1 ], [ ' x ' => 1 , ' y ' => 2 ]]
uniqWith ( $ objects , ' _::isEqual ' )
// => [['x' => 1, 'y' => 2], ['x' => 2, 'y' => 1]]
Este método es como zip
excepto que acepta una matriz de elementos agrupados y crea una matriz reagrupando los elementos a su configuración previa al zip.
Argumentos:
@param array $array La matriz de elementos agrupados a procesar.
Devolver:
@return array la nueva matriz de elementos reagrupados.
Ejemplo:
<?php
use function _ unzip ;
$ zipped = zip ([ ' a ' , ' b ' ], [ 1 , 2 ], [ true , false ])
// => [['a', 1, true], ['b', 2, false]]
unzip ( $ zipped )
// => [['a', 'b'], [1, 2], [true, false]]
Este método es como unzip
excepto que acepta iteratee
para especificar cómo se deben combinar los valores reagrupados. El iterado se invoca con los elementos de cada grupo: (...grupo).
Argumentos:
@param array $array La matriz de elementos agrupados a procesar.
@param (callable | null) $iteratee La función para combinar valores reagrupados.
Devolver:
@return array la nueva matriz de elementos reagrupados.
Ejemplo:
<?php
use function _ unzipWith ;
$ zipped = zip ([ 1 , 2 ], [ 10 , 20 ], [ 100 , 200 ])
// => [[1, 10, 100], [2, 20, 200]]
unzipWith (zipped, ' _::add ' )
// => [3, 30, 300]
Crea una matriz excluyendo todos los valores dados usando SameValueZero
para comparaciones de igualdad.
Nota: a diferencia de pull
, este método devuelve una nueva matriz.
Argumentos:
@param array $array La matriz a inspeccionar.
@param array<int, Mixed> $values Los valores a excluir.
Devolver:
@return array la nueva matriz de valores filtrados.
Ejemplo:
<?php
use function _ without ;
without ([ 2 , 1 , 2 , 3 ], 1 , 2 )
// => [3]
Crea una matriz de elementos agrupados, el primero de los cuales contiene los primeros elementos de las matrices dadas, el segundo contiene los segundos elementos de las matrices dadas, y así sucesivamente.
Argumentos:
@param array ...$arrays Los arreglos a procesar.
Devolver:
@return array la nueva matriz de elementos agrupados.
Ejemplo:
<?php
use function _ zip ;
zip ([ ' a ' , ' b ' ], [ 1 , 2 ], [ true , false ])
// => [['a', 1, true], ['b', 2, false]]
Este método es como fromPairs
excepto que acepta dos matrices, una de identificadores de propiedad y otra de valores correspondientes.
Argumentos:
@param array $props Los identificadores de propiedad.
@param array $values Los valores de propiedad.
Devolver:
@return objeto el nuevo objeto.
Ejemplo:
<?php
use function _ zipObject ;
zipObject ([ ' a ' , ' b ' ], [ 1 , 2 ])
/* => object(stdClass) #210 (2) {
[ " a " ] => int( 1 )
[ " b " ] => int( 2 )
}
*/
Este método es como zipObject
excepto que admite rutas de propiedad.
Argumentos:
@param array $props Los identificadores de propiedad.
@param array $values Los valores de propiedad.
Devolver:
@return stdClass el nuevo objeto.
Ejemplo:
<?php
use function _ zipObjectDeep ;
zipObjectDeep ([ ' a.b[0].c ' , ' a.b[1].d ' ], [ 1 , 2 ])
/* => class stdClass #20 (1) {
public $ a => class stdClass #19 (1) {
public $ b =>
array ( 2 ) {
[ 0 ] => class stdClass #17 (1) {
public $ c => int( 1 )
}
[ 1 ] => class stdClass #18 (1) {
public $ d => int( 2 )
}
}
}
}
*/
Este método es como zip
excepto que acepta iteratee
para especificar cómo se deben combinar los valores agrupados. El iterado se invoca con los elementos de cada grupo: (...grupo).
Argumentos:
@param array<int, (array | callable)> ...$arrays Los arreglos a procesar.
@param invocable $iteratee La función para combinar valores agrupados.
Devolver:
@return array la nueva matriz de elementos agrupados.
Ejemplo:
<?php
use function _ zipWith ;
zipWith ([ 1 , 2 ], [ 10 , 20 ], [ 100 , 200 ], function ( $ a , $ b , $ c ) { return $ a + $ b + $ c ; })
// => [111, 222]
Crea una matriz compuesta de claves generadas a partir de los resultados de ejecutar cada elemento de collection
a través de iteratee
. El valor correspondiente de cada clave es el número de veces que iteratee
devolvió la clave. El iterado se invoca con un argumento: (valor).
Argumentos:
@param iterable $collection La colección sobre la que se va a iterar.
@param callable $iteratee El iterado para transformar claves.
Devolver:
@return array Devuelve el objeto agregado compuesto.
Ejemplo:
<?php
use function _ countBy ;
countBy ([ 6.1 , 4.2 , 6.3 ], ' floor ' );
// => ['6' => 2, '4' => 1]
// The `property` iteratee shorthand.
countBy ([ ' one ' , ' two ' , ' three ' ], ' strlen ' );
// => ['3' => 2, '5' => 1]
Itera sobre elementos de collection
e invoca iteratee
para cada elemento. El iterado se invoca con tres argumentos: (valor, índice|clave, colección). Las funciones iteradas pueden salir de la iteración antes de tiempo devolviendo explícitamente false
.
Nota: Al igual que con otros métodos de "Colecciones", los objetos con una propiedad de "longitud" se iteran como matrices. Para evitar este comportamiento, utilice forIn
o forOwn
para la iteración de objetos.
Argumentos:
@param (matriz | iterable | objeto) $colección La colección sobre la que iterar.
@param callable $iteratee La función invocada por iteración.
Devolver:
@return (matriz | objeto) Devuelve collection
.
Ejemplo:
<?php
use function _ each ;
each ([ 1 , 2 ], function ( $ value ) { echo $ value ; })
// => Echoes `1` then `2`.
each (( object ) [ ' a ' => 1 , ' b ' => 2 ], function ( $ value , $ key ) { echo $ key ; });
// => Echoes 'a' then 'b' (iteration order is not guaranteed).
Este método es como each
excepto que itera sobre los elementos de collection
de derecha a izquierda.
Argumentos:
@param (matriz | iterable | objeto) $colección La colección sobre la que iterar.
@param callable $iteratee La función invocada por iteración.
Devolver:
@return (matriz | objeto) Devuelve collection
.
Ejemplo:
<?php
use function _ eachRight ;
eachRight ([ 1 , 2 ], function ( $ value ) { echo $ value ; })
// => Echoes `2` then `1`.
Itera sobre los elementos de array
y devuelve una matriz de todos los elementos. predicate
devuelve la verdad. El predicado se invoca con tres argumentos: (valor, índice, matriz).
Nota: a diferencia de remove
, este método devuelve una nueva matriz.
Argumentos:
@param iterable $array La matriz sobre la que se va a iterar.
@param callable $predicate La función invocada por iteración.
Devolver:
@return array la nueva matriz filtrada.
Ejemplo:
<?php
use function _ filter ;
$ users = [
[ ' user ' => ' barney ' , ' age ' => 36 , ' active ' => true ],
[ ' user ' => ' fred ' , ' age ' => 40 , ' active ' => false ]
];
filter ( $ users , function ( $ o ) { return ! $ o [ ' active ' ]; });
// => objects for ['fred']
// The `matches` iteratee shorthand.
filter ( $ users , [ ' age ' => 36 , ' active ' => true ]);
// => objects for ['barney']
// The `matchesProperty` iteratee shorthand.
filter ( $ users , [ ' active ' , false ]);
// => objects for ['fred']
// The `property` iteratee shorthand.
filter ( $ users , ' active ' );
// => objects for ['barney']
Itera sobre los elementos de collection
y devuelve el predicate
del primer elemento que devuelve la verdad. El predicado se invoca con tres argumentos: (valor, índice|clave, colección).
Argumentos:
@param iterable $collection La colección a inspeccionar.
@param callable $predicate La función invocada por iteración.
@param int $fromIndex El índice desde el que buscar.
Devolver:
@return mixto Devuelve el elemento coincidente; de lo contrario, null
.
Ejemplo:
<?php
use function _ find ;
$ users = [
[ ' user ' => ' barney ' , ' age ' => 36 , ' active ' => true ],
[ ' user ' => ' fred ' , ' age ' => 40 , ' active ' => false ],
[ ' user ' => ' pebbles ' , ' age ' => 1 , ' active ' => true ]
];
find ( $ users , function ( $ o ) { return $ o [ ' age ' ] < 40 ; });
// => object for 'barney'
// The `matches` iteratee shorthand.
find ( $ users , [ ' age ' => 1 , ' active ' => true ]);
// => object for 'pebbles'
// The `matchesProperty` iteratee shorthand.
find ( $ users , [ ' active ' , false ]);
// => object for 'fred'
// The `property` iteratee shorthand.
find ( $ users , ' active ' );
// => object for 'barney'
Este método es como find
excepto que itera sobre los elementos de collection
de derecha a izquierda.
Argumentos:
@param iterable $collection La colección a inspeccionar.
@param callable $predicate La función invocada por iteración.
@param int $fromIndex El índice desde el que buscar.
Devolver:
@return mixto Devuelve el elemento coincidente; de lo contrario, undefined
.
Ejemplo:
<?php
use function _ findLast ;
findLast ([ 1 , 2 , 3 , 4 ], function ( $ n ) { return $ n % 2 == 1 ; })
// => 3
Crea una matriz aplanada de valores ejecutando cada elemento de collection
a través de iteratee
y aplanando los resultados asignados. El iterado se invoca con tres argumentos: (valor, índice|clave, colección).
Argumentos:
@param iterable $collection La colección sobre la que se va a iterar.
@param callable $iteratee La función invocada por iteración.
Devolver:
@return array la nueva matriz aplanada.
Ejemplo:
<?php
use function _ flatMap ;
function duplicate ( $ n ) {
return [ $ n , $ n ]
}
flatMap ([ 1 , 2 ], ' duplicate ' )
// => [1, 1, 2, 2]
Este método es como flatMap
excepto que aplana recursivamente los resultados mapeados.
Argumentos:
@param iterable $collection La colección sobre la que se va a iterar.
@param callable $iteratee La función invocada por iteración.
Devolver:
@return array Devuelve la nueva matriz aplanada.
Ejemplo:
<?php
use function _ flatMapDeep ;
function duplicate ( $ n ) {
return [[[ $ n , $ n ]]];
}
flatMapDeep ([ 1 , 2 ], ' duplicate ' );
// => [1, 1, 2, 2]
Este método es como flatMap
excepto que aplana recursivamente los resultados mapeados hasta tiempos depth
.
Argumentos:
@param iterable $collection La colección sobre la que se va a iterar.
@param callable $iteratee La función invocada por iteración.
@param int $profundidad La profundidad máxima de recursividad.
Devolver:
@return array la nueva matriz aplanada.
Ejemplo:
<?php
use function _ flatMapDepth ;
function duplicate ( $ n ) {
return [[[ $ n , $ n ]]]
}
flatMapDepth ([ 1 , 2 ], ' duplicate ' , 2 )
// => [[1, 1], [2, 2]]
Crea una matriz compuesta de claves generadas a partir de los resultados de ejecutar cada elemento de collection
a través de iteratee
. El orden de los valores agrupados está determinado por el orden en que aparecen en collection
. El valor correspondiente de cada clave es una matriz de elementos responsables de generar la clave. El iterado se invoca con un argumento: (valor).
Argumentos:
@param iterable $collection La colección sobre la que se va a iterar.
@param callable $iteratee El iterado para transformar claves.
Devolver:
@return array Devuelve el objeto agregado compuesto.
Ejemplo:
<?php
use function _ groupBy ;
groupBy ([ 6.1 , 4.2 , 6.3 ], ' floor ' );
// => ['6' => [6.1, 6.3], '4' => [4.2]]
groupBy ([ ' one ' , ' two ' , ' three ' ], ' strlen ' );
// => ['3' => ['one', 'two'], '5' => ['three']]
Invoca el método en path
de cada elemento de collection
y devuelve una matriz de los resultados de cada método invocado. Se proporcionan argumentos adicionales para cada método invocado. Si path
es una función, se invoca y this
vincula a cada elemento de collection
.
Argumentos:
@param iterable $collection La colección sobre la que se va a iterar.
@param (matriz | invocable | cadena) $ruta La ruta del método a invocar o la función invocada por iteración.
@param array $args Los argumentos para invocar cada método.
Devolver:
@return matriz la matriz de resultados.
Ejemplo:
<?php
use function _ invokeMap ;
invokeMap ([[ 5 , 1 , 7 ], [ 3 , 2 , 1 ]], function ( $ result ) { sort ( $ result ); return $ result ;})
// => [[1, 5, 7], [1, 2, 3]]
invokeMap ([ 123 , 456 ], ' str_split ' )
// => [['1', '2', '3'], ['4', '5', '6']]
Crea un objeto compuesto por claves generadas a partir de los resultados de ejecutar cada elemento de collection
a través de iteratee
. El valor correspondiente de cada clave es el último elemento responsable de generar la clave. El iterado se invoca con un argumento: (valor).
Argumentos:
@param iterable $collection La colección sobre la que se va a iterar.
@param callable $iteratee El iterado para transformar claves.
Devolver:
@return matriz el objeto agregado compuesto.
Ejemplo:
<?php
use function _ keyBy ;
$ array = [
[ ' direction ' => ' left ' , ' code ' => 97 ],
[ ' direction ' => ' right ' , ' code ' => 100 ],
];
keyBy ( $ array , function ( $ o ) { return chr ( $ o [ ' code ' ]); })
// => ['a' => ['direction' => 'left', 'code' => 97], 'd' => ['direction' => 'right', 'code' => 100]]
keyBy ( $ array , ' direction ' );
// => ['left' => ['direction' => 'left', 'code' => 97], 'right' => ['direction' => 'right', 'code' => 100]]
Crea una matriz de valores ejecutando cada elemento de collection
a través de iteratee
. El iterado se invoca con tres argumentos: (valor, índice|clave, colección).
Muchos métodos de lodash-php están protegidos para funcionar como iterados para métodos como _::every
, _::filter
, _::map
, _::mapValues
, _::reject
y _::some
.
Los métodos protegidos son: ary
, chunk
, curry
, curryRight
, drop
, dropRight
, every
, fill
, invert
, parseInt
, random
, range
, rangeRight
, repeat
, sampleSize
, slice
, some
, sortBy
, split
, take
, takeRight
, template
, trim
, trimEnd
, trimStart
y words
Argumentos:
@param (matriz | objeto) $collection La colección sobre la que se iterará.
@param (invocable | cadena | matriz) $iteratee La función invocada por iteración.
Devolver:
@return array Devuelve la nueva matriz asignada.
Ejemplo:
<?php
use function _ map ;
function square ( int $ n ) {
return $ n * $ n ;
}
map ([ 4 , 8 ], $ square );
// => [16, 64]
map (( object ) [ ' a ' => 4 , ' b ' => 8 ], $ square );
// => [16, 64] (iteration order is not guaranteed)
$ users = [
[ ' user ' => ' barney ' ],
[ ' user ' => ' fred ' ]
];
// The `property` iteratee shorthand.
map ( $ users , ' user ' );
// => ['barney', 'fred']
Este método es como sortBy
excepto que permite especificar el orden de clasificación de los iterados por los que ordenar. Si no se especifica orders
, todos los valores se ordenan en orden ascendente. De lo contrario, especifique un orden de "desc" para orden descendente o "asc" para orden ascendente de los valores correspondientes.
Argumentos:
@param (iterable | null) $collection La colección sobre la que se va a iterar.
@param (array[] | callable[] | string[]) $iteratee Los iterados por los que ordenar.
@param string[] $orders El orden de clasificación de iteratees
.
Devolver:
@return array la nueva matriz ordenada.
Ejemplo:
<?php
use function _ orderBy ;
$ users = [
[ ' user ' => ' fred ' , ' age ' => 48 ],
[ ' user ' => ' barney ' , ' age ' => 34 ],
[ ' user ' => ' fred ' , ' age ' => 40 ],
[ ' user ' => ' barney ' , ' age ' => 36 ]
]
// Sort by `user` in ascending order and by `age` in descending order.
orderBy ( $ users , [ ' user ' , ' age ' ], [ ' asc ' , ' desc ' ])
// => [['user' => 'barney', 'age' => 36], ['user' => 'barney', 'age' => 34], ['user' => 'fred', 'age' => 48], ['user' => 'fred', 'age' => 40]]
Crea una matriz de elementos divididos en dos grupos, el primero de los cuales contiene elementos que predicate
devuelve verdadero para, el segundo de los cuales contiene elementos predicate
devuelve falso para. El predicado se invoca con un argumento: (valor).
Argumentos:
@param iterable $collection La colección sobre la que se va a iterar.
@param callable $predicate La función invocada por iteración.
Devolver:
@return array la matriz de elementos agrupados.
Ejemplo:
<?php
use function _ partition ;
$ users = [
[ ' user ' => ' barney ' , ' age ' => 36 , ' active ' => false ],
[ ' user ' => ' fred ' , ' age ' => 40 , ' active ' => true ],
[ ' user ' => ' pebbles ' , ' age ' => 1 , ' active ' => false ]
];
partition ( $ users , function ( $ user ) { return $ user [ ' active ' ]; })
// => objects for [['fred'], ['barney', 'pebbles']]
Reduce collection
a un valor que es el resultado acumulado de ejecutar cada elemento de collection
a través de iteratee
, donde a cada invocación sucesiva se le proporciona el valor de retorno de la anterior. Si no se proporciona accumulator
, el primer elemento de collection
se utiliza como valor inicial. El iterado se invoca con cuatro argumentos: (acumulador, valor, índice|clave, colección).
Muchos métodos lodash están protegidos para funcionar como iterados para métodos como reduce
, reduceRight
y transform
.
Los métodos protegidos son: assign
, defaults
, defaultsDeep
, includes
, merge
, orderBy
y sortBy
Argumentos:
@param iterable $collection La colección sobre la que se va a iterar.
@param mixto $iteratee La función invocada por iteración.
@param mixto $acumulador El valor inicial.
Devolver:
@return mixto Devuelve el valor acumulado.
Ejemplo:
<?php
use function _ reduce ;
reduce ([ 1 , 2 ], function ( $ sum , $ n ) { return $ sum + $ n ; }, 0 )
// => 3
reduce ([ ' a ' => 1 , ' b ' => 2 , ' c ' => 1 ], function ( $ result , $ value , $ key ) {
if (! isset ( $ result [ $ value ])) {
$ result [ $ value ] = [];
}
$ result [ $ value ][] = $ key ;
return $ result ;
}, [])
// => ['1' => ['a', 'c'], '2' => ['b']] (iteration order is not guaranteed)
Este método es como reduce
excepto que itera sobre los elementos de collection
de derecha a izquierda.
Argumentos:
@param iterable $collection La colección sobre la que se va a iterar.
@param mixto $iteratee La función invocada por iteración.
@param mixto $acumulador El valor inicial.
Devolver:
@return mixto Devuelve el valor acumulado.
Ejemplo:
<?php
use function _ reduceRight ;
$ array = [[ 0 , 1 ], [ 2 , 3 ], [ 4 , 5 ]];
reduceRight ( array , (flattened, other) => flattened. concat (other), [])
// => [4, 5, 2, 3, 0, 1]
Lo opuesto al filter
este método devuelve los elementos de collection
cuyo predicate
no devuelve verdadero.
Argumentos:
@param iterable $collection La colección sobre la que se va a iterar.
@param callable $predicate La función invocada por iteración.
Devolver:
@return array la nueva matriz filtrada.
Ejemplo:
<?php
use function _ reject ;
$ users = [
[ ' user ' => ' barney ' , ' active ' => true ],
[ ' user ' => ' fred ' , ' active ' => false ]
]
reject ( $ users , ' active ' )
// => objects for ['fred']
Obtiene el tamaño de collection
devolviendo su longitud para valores de matriz o el número de propiedades públicas para objetos.
Argumentos:
@param (matriz | objeto | cadena) $colección La colección a inspeccionar.
Devolver:
@return int Devuelve el tamaño de la colección.
Ejemplo:
<?php
use function _ size ;
size ([ 1 , 2 , 3 ]);
// => 3
size ( new class { public $ a = 1 ; public $ b = 2 ; private $ c = 3 ; });
// => 2
size ( ' pebbles ' );
// => 7
Comprueba si predicate
devuelve verdadero para cualquier elemento de collection
. La iteración se detiene una vez que predicate
devuelve la verdad. El predicado se invoca con tres argumentos: (valor, índice|clave, colección).
Argumentos:
@param iterable $collection La colección sobre la que se va a iterar.
@param (invocable | cadena | matriz) $predicate La función invocada por iteración.
Devolver:
@return boolean Devuelve true
si algún elemento pasa la verificación de predicado; en caso contrario, false
.
Ejemplo:
<?php
use function _ some ;
some ([ null , 0 , ' yes ' , false ], , function ( $ value ) { return is_bool ( $ value ); }));
// => true
$ users = [
[ ' user ' => ' barney ' , ' active ' => true ],
[ ' user ' => ' fred ' , ' active ' => false ]
];
// The `matches` iteratee shorthand.
some ( $ users , [ ' user ' => ' barney ' , ' active ' => false ]);
// => false
// The `matchesProperty` iteratee shorthand.
some ( $ users , [ ' active ' , false ]);
// => true
// The `property` iteratee shorthand.
some ( $ users , ' active ' );
// => true
Crea una matriz de elementos, ordenados en orden ascendente según los resultados de ejecutar cada elemento de una colección en cada iterado. Este método realiza una clasificación estable, es decir, conserva el orden de clasificación original de elementos iguales. Los iterados se invocan con un argumento: (valor).
Argumentos:
@param (matriz | objeto | nulo) $colección La colección sobre la que iterar.
@param (callable | callable[]) $iteratees Los iterados por los que ordenar.
Devolver:
@return array Devuelve la nueva matriz ordenada.
Ejemplo:
<?php
use function _ sortBy ;
$ users = [
[ ' user ' => ' fred ' , ' age ' => 48 ],
[ ' user ' => ' barney ' , ' age ' => 36 ],
[ ' user ' => ' fred ' , ' age ' => 40 ],
[ ' user ' => ' barney ' , ' age ' => 34 ],
];
sortBy ( $ users , [ function ( $ o ) { return $ o [ ' user ' ]; }]);
// => [['user' => 'barney', 'age' => 36], ['user' => 'barney', 'age' => 34], ['user' => 'fred', 'age' => 48], ['user' => 'fred', 'age' => 40]]
sortBy ( $ users , [ ' user ' , ' age ' ]);
// => [['user' => 'barney', 'age' => 34], ['user' => 'barney', 'age' => 36], ['user' => 'fred', 'age' => 40], ['user' => 'fred', 'age' => 48]]
Obtiene la marca de tiempo del número de milisegundos que han transcurrido desde la época Unix (1 de enero de 1970, 00:00:00 UTC).
Argumentos:
Devolver:
@return int Devuelve la marca de tiempo.
Ejemplo:
<?php
use function _ now ;
now ();
// => 1511180325735
Lo contrario de before
; este método crea una función que invoca func
una vez que se llama n
más veces.
Argumentos:
@param int $n El número de llamadas antes de que se invoque func
.
@param Invocable $func La función a restringir.
Devolver:
@return Callable Devuelve la nueva función restringida.
Ejemplo:
<?php
use function _ after ;
$ saves = [ ' profile ' , ' settings ' ];
$ done = after ( count ( $ saves ), function () {
echo ' done saving! ' ;
});
forEach ( $ saves , function ( $ type ) use ( $ done ) {
asyncSave ([ ' type ' => $ type , ' complete ' => $ done ]);
});
// => Prints 'done saving!' after the two async saves have completed.
Crea una función que invoca func
, con hasta n
argumentos, ignorando cualquier argumento adicional.
Argumentos:
@param invocable $func La función para limitar los argumentos.
@param int $n El límite de aridad.
Devolver:
@return Callable Devuelve la nueva función limitada.
Ejemplo:
<?php
use function _ ary ;
map ([ ' 6 ' , ' 8 ' , ' 10 ' ], ary ( ' intval ' , 1 ));
// => [6, 8, 10]
Crea una función que invoca func
, con los argumentos de la función creada, mientras se llama menos de n
veces. Las llamadas posteriores a la función creada devuelven el resultado de la última invocación func
.
Argumentos:
@param int $n El número de llamadas en las que ya no se invoca func
.
@param invocable $func La función a restringir.
Devolver:
@return invocable Devuelve la nueva función restringida.
Ejemplo:
<?php
use function _ before ;
$ users = [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 ];
$ result = uniqBy ( map ( $ users , before ( 5 , [ $ repository , ' find ' ])), ' id ' )
// => Fetch up to 4 results.
Crea una función que invoca func
con el enlace this
de object
y partials
antepuesto a los argumentos que recibe.
Argumentos:
@param función $ invocable La función a vincular.
@param (objeto | mixto) $object El enlace de object
de func
.
@param array<int, Mixed> $partials Los argumentos que se aplicarán parcialmente.
Devolver:
@return invocable Devuelve la nueva función vinculada.
Ejemplo:
<?php
use function _ bind ;
function greet ( $ greeting , $ punctuation ) {
return $ greeting . ' ' . $ this -> user . $ punctuation ;
}
$ object = $ object = new class {
public $ user = ' fred ' ;
};
$ bound = bind ( ' greet ' , $ object , ' hi ' );
$ bound ( ' ! ' );
// => 'hi fred!'
Crea una función que invoca el método $function
de $object
con $partials
antepuesto a los argumentos que recibe.
Este método se diferencia de bind
porque permite que las funciones vinculadas hagan referencia a métodos que pueden redefinirse o que aún no existen.
Argumentos:
@param objeto $object El objeto sobre el que invocar el método.
@param cadena $función El nombre del método.
@param array<int, Mixed> $partials Los argumentos que se aplicarán parcialmente.
Devolver:
@return invocable Devuelve la nueva función vinculada.
Ejemplo:
<?php
use function _ bindKey ;
$ object = new class {
private $ user = ' fred ' ;
function greet ( $ greeting , $ punctuation ) {
return $ greeting . ' ' . $ this -> user . $ punctuation ;
}
};
$ bound = bindKey ( $ object , ' greet ' , ' hi ' );
$ bound ( ' ! ' );
// => 'hi fred!'
Crea una función que acepta argumentos de func
e invoca func
y devuelve su resultado, si se ha proporcionado al menos un número arity
de argumentos, o devuelve una función que acepta los argumentos func
restantes, y así sucesivamente. La aridad de func
se puede especificar si func.length
no es suficiente.
El valor _.curry.placeholder
, que por defecto es _
en compilaciones monolíticas, se puede utilizar como marcador de posición para los argumentos proporcionados.
Nota: este método no establece la propiedad de "longitud" de las funciones al curry.
Argumentos:
@param invocable $func La función a curry.
@param (int | null) $arity La aridad de func
.
Devolver:
@return invocable Devuelve la nueva función curry.
Ejemplo:
<?php
use function _ curry ;
$ abc = function ( $ a , $ b , $ c ) {
return [ $ a , $ b , $ c ];
};
$ curried = curry ( $ abc );
$ curried ( 1 )( 2 )( 3 );
// => [1, 2, 3]
$ curried ( 1 , 2 )( 3 );
// => [1, 2, 3]
$ curried ( 1 , 2 , 3 );
// => [1, 2, 3]
// Curried with placeholders.
$ curried ( 1 )(_, 3 )( 2 );
// => [1, 2, 3]
Invoca func
después de wait
milisegundos. Se proporcionan argumentos adicionales para func
cuando se invoca.
Argumentos:
@param invocable $func La función a retrasar.
@param int $wait El número de milisegundos para retrasar la invocación.
@param matriz<int,mixto> $args
Devolver:
@return int la identificación del temporizador.
Ejemplo:
<?php
use function _ delay ;
delay ( function ( $ text ) {
echo $ text ;
}, 1000 , ' later ' );
// => Echo 'later' after one second.
Crea una función que invoca func
con argumentos invertidos.
Argumentos:
@param invocable $func La función para invertir los argumentos.
Devolver:
@return invocable Devuelve la nueva función invertida.
Ejemplo:
<?php
use function _ flip ;
$ flipped = flip ( function () {
return func_get_args ();
});
flipped ( ' a ' , ' b ' , ' c ' , ' d ' );
// => ['d', 'c', 'b', 'a']
Crea una función que memoriza el resultado de func
. Si se proporciona resolver
, determina la clave de caché para almacenar el resultado en función de los argumentos proporcionados a la función memorizada. De forma predeterminada, el primer argumento proporcionado a la función memorizada se utiliza como clave de caché del mapa.
Nota: La caché se expone como propiedad de la cache
en la función memorizada. Su creación se puede personalizar reemplazando el constructor _.memoize.Cache
por uno cuyas instancias implementen la interfaz del método Map
de clear
, delete
, get
, has
y set
.
Argumentos:
@param callable $func La función para memorizar su salida.
@param (callable | null) $resolver La función para resolver la clave de caché.
Devolver:
@return invocable Devuelve la nueva función memorizada.
Ejemplo:
<?php
use function _ memoize ;
$ object = [ ' a ' => 1 , ' b ' => 2 ];
$ other = [ ' c ' => 3 , ' d ' => 4 ];
$ values = memoize ( ' _values ' );
$ values ( $ object );
// => [1, 2]
$ values ( $ other );
// => [3, 4]
$ object [ ' a ' ] = 2 ;
$ values ( $ object );
// => [1, 2]
// Modify the result cache.
$ values -> cache -> set ( $ object , [ ' a ' , ' b ' ]);
$ values ( $ object );
// => ['a', 'b']
Crea una función que niega el resultado del predicado func
Argumentos:
@param callable $predicate El predicado a negar.
Devolver:
@return invocable Devuelve la nueva función negada.
Ejemplo:
<?php
use function _ negate ;
function isEven ( $ n ) {
return $ n % 2 == 0 ;
}
filter ([ 1 , 2 , 3 , 4 , 5 , 6 ], negate ( $ isEven ));
// => [1, 3, 5]
Crea una función que está restringida a invocar func
una vez. Las llamadas repetidas a la función devuelven el valor de la primera invocación. La func
se invoca con los argumentos de la función creada.
Argumentos:
@param invocable $func La función a restringir.
Devolver:
@return invocable la nueva función restringida.
Ejemplo:
<?php
use function _ once ;
$ initialize = once ( ' createApplication ' );
$ initialize ();
$ initialize ();
// => `createApplication` is invoked once
Crea una función que invoca func
con sus argumentos transformados.
Argumentos:
@param invocable $func La función a ajustar.
@param callable[] $transforms El argumento se transforma.
Devolver:
@return invocable la nueva función.
Ejemplo:
<?php
use function _ overArgs ;
function doubled ( $ n ) {
return $ n * 2 ;
}
function square ( $ n ) {
return $ n * $ n ;
}
$ func = overArgs ( function ( $ x , $ y ) {
return [ $ x , $ y ];
}, [ ' square ' , ' doubled ' ]);
$ func ( 9 , 3 );
// => [81, 6]
$ func ( 10 , 5 );
// => [100, 10]
Crea una función que invoca func
con partials
antepuestos a los argumentos que recibe.
Argumentos:
@param callable $func La función a la que aplicar parcialmente los argumentos.
@param array<int, Mixed> $partials Los argumentos que se aplicarán parcialmente.
Devolver:
@return invocable Devuelve la nueva función parcialmente aplicada.
Ejemplo:
<?php
use function _ partial ;
function greet ( $ greeting , $ name ) {
return $ greeting . ' ' . $ name ;
}
$ sayHelloTo = partial ( ' greet ' , ' hello ' );
$ sayHelloTo ( ' fred ' );
// => 'hello fred'
Crea una función que invoca func
con this
enlace de la función creada y los argumentos desde start
y más allá provisto como una matriz.
Argumentos:
@Param Callable $ func La función para aplicar un parámetro REST a.
@param (int | null) $ Inicie la posición de inicio del parámetro REST.
Devolver:
@return Callable Devuelve la nueva función.
Ejemplo:
<?php
use function _ rest ;
$ say = rest ( function ( $ what , $ names ) {
return $ what . ' ' . implode ( ' , ' , initial ( $ names )) .
( size ( $ names ) > 1 ? ' , & ' : '' ) . last ( $ names );
});
$ say ( ' hello ' , ' fred ' , ' barney ' , ' pebbles ' );
// => 'hello fred, barney, & pebbles'
Crea una función que invoca func
con this
enlace de la función Crear y una variedad de argumentos de manera muy similar Function#apply
.
Nota: Este método se basa en el operador de propagación.
Argumentos:
@param llamable $ funce la función para difundir argumentos.
@param int $ inicie la posición de inicio del spread.
Devolver:
@return Callable Devuelve la nueva función.
Ejemplo:
<?php
use function _ spread ;
$ say = spread ( function ( $ who , $ what ) {
return $ who . ' says ' . $ what ;
});
$ say ([ ' fred ' , ' hello ' ]);
// => 'fred says hello'
Crea una función que acepta hasta un argumento, ignorando cualquier argumento adicional.
Argumentos:
@Param Callable $ func La función para limitar los argumentos.
Devolver:
@return llamable la nueva función limitada.
Ejemplo:
<?php
use function _ unary ;
map ([ ' 6 ' , ' 8 ' , ' 10 ' ], unary ( ' intval ' ));
// => [6, 8, 10]
Crea una función que proporciona value
a wrapper
como su primer argumento. Cualquier argumento adicional proporcionado a la función se adjunta a los proporcionados al wrapper
.
Argumentos:
@param mixed $ valor el valor para envolver.
@Param Callable $ wrapper la función de envoltorio.
Devolver:
@return llamable la nueva función.
Ejemplo:
<?php
use function _ wrap ;
$ p = wrap ( ' _escape ' , function ( $ func , $ text ) {
return ' <p> ' . $ func ( $ text ) . ' </p> ' ;
});
$ p ( ' fred, barney, & pebbles ' );
// => '<p>fred, barney, & pebbles</p>'
Realiza una comparación entre dos valores para determinar si son equivalentes.
Argumentos:
@param mixó $ valor el valor para comparar.
@param mezclado $ otro el otro valor para comparar.
Devolver:
@return boolean devuelve true
si los valores son equivalentes, de lo contrario false
.
Ejemplo:
<?php
use function _ eq ;
$ object = ( object ) [ ' a ' => 1 ];
$ other = ( object ) [ ' a ' => 1 ];
eq ( $ object , $ object );
// => true
eq ( $ object , $ other );
// => false
eq ( ' a ' , ' a ' );
// => true
eq ([ ' a ' ], ( object ) [ ' a ' ]);
// => false
eq ( INF , INF );
// => true
Realiza una comparación profunda entre dos valores para determinar si son equivalentes.
Nota: Este método admite comparar matrices, booleanos, objetos de fecha y hora, objetos de excepción, SplobjectStorage, números, cadenas, matrices tipificadas, recursos, nodos DOM. Los objetos se comparan con sus propias propiedades, no heredadas y enumerables.
Argumentos:
@param mixó $ valor el valor para comparar.
@param mezclado $ otro el otro valor para comparar.
Devolver:
@return bool devuelve true
si los valores son equivalentes, de lo contrario false
.
Ejemplo:
<?php
use function _ isEqual ;
$ object = [ ' a ' => 1 ]
$ other = [ ' a ' => ' 1 ' ]
isEqual ( $ object , $ other )
// => true
$ object === $ other
// => false
Comprueba si value
es una Exception
, ParseError
, error , Throwable
, soapfault , DOMException
, pdoException`, objeto.
Argumentos:
@param mixto $ valor el valor para verificar.
Devolver:
@return boolean devuelve true
si value
es un objeto de error, de lo contrario false
.
Ejemplo:
<?php
use function _ isError ;
isError ( new Exception ())
// => true
isError (Exception::Class)
// => false
Agrega dos números.
Argumentos:
@param (int | float | string) $ augura el primer número en una adición.
@param (int | float | string) $ Addiend el segundo número en una adición.
Devolver:
@return (int | float) Devuelve el total.
Ejemplo:
<?php
use function _ add ;
add ( 6 , 4 );
// => 10
Calcula el valor máximo de array
. Si array
está vacía o falsifica, se devuelve nulo.
Argumentos:
@param (matriz | nulo) $ matriz la matriz para iterar.
Devolver:
@return (int | null) Devuelve el valor máximo.
Ejemplo:
<?php
use function _ max ;
max ([ 4 , 2 , 8 , 6 ]);
// => 8
max ([]);
// => null
Este método es como max
, excepto que acepta iteratee
, que se invoca para cada elemento en array
para generar el criterio por el cual se clasifica el valor. El iteradoe se invoca con un argumento: (valor).
Argumentos:
@Param Array $ Array La matriz para iterar.
@param (llamable | cadena) $ iteratee el iteradoe invocado por elemento.
Devolver:
@return mixto Devuelve el valor máximo.
Ejemplo:
<?php
use function _ maxBy ;
$ objects = [[ ' n ' => 1 ], [ ' n ' => 2 ]];
maxBy ( $ objects , function ( $ o ) { return $ o [ ' n ' ]; });
// => ['n' => 2]
// The `property` iteratee shorthand.
maxBy ( $ objects , ' n ' );
// => ['n' => 2]
Las abrazaderas number
encuentran dentro de los límites lower
y upper
inclusivos.
Argumentos:
@param int $ número el número para sujetar.
@Param int $ Bajo el límite inferior.
@param int $ superior el límite superior.
Devolver:
@return int devuelve el número sujetado.
Ejemplo:
<?php
use function _ clamp ;
clamp (- 10 , - 5 , 5 )
// => -5
clamp ( 10 , - 5 , 5 )
// => 5
Comprueba si number
es entre start
y hasta, pero no incluir, end
. Si no se especifica end
, está configurado para start
con start
y luego establecer en 0
. Si start
es mayor que end
los parámetros se intercambian para admitir rangos negativos.
Argumentos:
@param float $ número el número para verificar.
@param float $ comienza el inicio del rango.
@param float $ finaliza el final de la gama.
Devolver:
@return boolean devuelve true
si number
está en el rango, de lo contrario false
.
Ejemplo:
<?php
use function _ inRange ;
inRange ( 3 , 2 , 4 )
// => true
inRange ( 4 , 8 )
// => true
inRange ( 4 , 2 )
// => false
inRange ( 2 , 2 )
// => false
inRange ( 1.2 , 2 )
// => true
inRange ( 5.2 , 4 )
// => false
inRange (- 3 , - 2 , - 6 )
// => true
Produce un número aleatorio entre los límites lower
y upper
inclusivos. Si solo se proporciona un argumento un número entre 0
y se devuelve el número dado. Si floating
es true
, o lower
o upper
son flotadores, se devuelve un número de punto flotante en lugar de un entero.
Argumentos:
@param (int | float | bool) $ Bajo el límite inferior.
@param (int | float | bool) $ superior el límite superior.
@param (bool | nulo) $ flotante Especifique devolver un número de punto flotante.
Devolver:
@return (int | float) Devuelve el número aleatorio.
Ejemplo:
<?php
use function _ random ;
random ( 0 , 5 )
// => an integer between 0 and 5
random ( 5 )
// => also an integer between 0 and 5
random ( 5 , true )
// => a floating-point number between 0 and 5
random ( 1.2 , 5.2 )
// => a floating-point number between 1.2 and 5.2
Obtiene el valor en la ruta del objeto. Si el valor resuelto es nulo, el valor predeterminado se devuelve en su lugar.
Argumentos:
@param mixto $ objeto La matriz asociativa u objeto para obtener valor de
@param (Array | String) $ Path Dot separado o matriz de cadena
@param mixto $ defaultValue (opcional) El valor devuelto para valores no resueltos o nulos.
Devolver:
@Return Mixed Devuelve el valor resuelto.
Ejemplo:
<?php
use function _ get ;
$ sampleArray = [ " key1 " => [ " key2 " => [ " key3 " => " val1 " , " key4 " => "" ]]];
get ( $ sampleArray , ' key1.key2.key3 ' );
// => "val1"
get ( $ sampleArray , ' key1.key2.key5 ' , " default " );
// => "default"
get ( $ sampleArray , ' key1.key2.key4 ' , " default " );
// => ""
Crea un objeto compuesto por las propiedades object
seleccionado.
Argumentos:
@param objeto $ objeto el objeto de origen.
@param (string | string []) $ rutas las rutas de propiedad para elegir.
Devolver:
@return stdclass Devuelve el nuevo objeto.
Ejemplo:
<?php
use function _ pick ;
$ object = ( object ) [ ' a ' => 1 , ' b ' => ' 2 ' , ' c ' => 3 ];
pick ( $ object , [ ' a ' , ' c ' ]);
// => (object) ['a' => 1, 'c' => 3]
Crea un objeto compuesto por las propiedades object
predicate
devuelve verdady para. El predicado se invoca con dos argumentos: (valor, clave).
Argumentos:
@param (objeto | nulo) $ objeto el objeto de origen.
@param llamable $ predicate la función invocada por propiedad.
Devolver:
@return stdclass Devuelve el nuevo objeto.
Ejemplo:
<?php
use function _ pickBy ;
$ object = ( object ) [ ' a ' => 1 , ' b ' => ' abc ' , ' c ' => 3 ];
pickBy (object, ' is_numeric ' );
// => (object) ['a' => 1, 'c' => 3]
Crea una instancia de envoltorio lodash
que envuelve value
con secuencias de cadena de métodos explícitos habilitadas. El resultado de tales secuencias debe desenvolver con ->value()
.
Argumentos:
@param mixed $ valor el valor para envolver.
Devolver:
@return _ Devuelve la nueva instancia de envoltura lodash
.
Ejemplo:
<?php
use function _ chain ;
$ users = [
[ ' user ' => ' barney ' , ' age ' => 36 ],
[ ' user ' => ' fred ' , ' age ' => 40 ],
[ ' user ' => ' pebbles ' , ' age ' => 1 ],
];
$ youngest = chain ( $ users )
-> sortBy ( ' age ' )
-> map ( function ( $ o ) {
return $ o [ ' user ' ] . ' is ' . $ o [ ' age ' ];
})
-> head ()
-> value ();
// => 'pebbles is 1'
Convierte string
a la caja de camello.
Argumentos:
@param cadena $ cadena la cadena para convertir.
Devolver:
La cadena @return devuelve la cadena Camel Cased.
Ejemplo:
<?php
use function _ camelCase ;
camelCase ( ' Foo Bar ' )
// => 'fooBar'
camelCase ( ' --foo-bar-- ' )
// => 'fooBar'
camelCase ( ' __FOO_BAR__ ' )
// => 'fooBar'
Convierte el primer carácter de string
en mayúsculas y la caja restante a minúscula.
Argumentos:
@param cadena $ cadena la cadena para capitalizar.
Devolver:
La cadena @return devuelve la cadena capitalizada.
Ejemplo:
<?php
use function _ capitalize ;
capitalize ( ' FRED ' )
// => 'Fred'
DEBURRS string
al convertir [suplemento latino-1] (https => // en.wikipedia.org/wiki/latin-1_supplement_(unicode_block)#character_table) y [latín extendido-a] (https => // en.wikipedia. org/wiki/latin_extended-a) a letras latinas básicas y eliminando [combinando marcas diacríticas] (https => // en.wikipedia.org/wiki/combining_diacritical_marks).
Argumentos:
@param cadena $ cadena la cadena a DeBurr.
Devolver:
@return String Devuelve la cadena desbordada.
Ejemplo:
<?php
use function _ deburr ;
deburr ( ' déjà vu ' )
// => 'deja vu'
Comprueba si string
finaliza con la cadena de destino dada.
Argumentos:
@param cadena $ cadena la cadena para inspeccionar.
@param cadena $ Target la cadena para buscar.
@param int $ posicione el puesto para buscar.
Devolver:
@return boolean devuelve true
si string
termina con target
, de lo contrario false
.
Ejemplo:
<?php
use function _ endsWith ;
endsWith ( ' abc ' , ' c ' )
// => true
endsWith ( ' abc ' , ' b ' )
// => false
endsWith ( ' abc ' , ' b ' , 2 )
// => true
Convierte los personajes "&", "<", ">", '"' y" '"en string
a sus entidades HTML correspondientes.
Aunque el personaje ">" se escapó para la simetría, personajes como ">" y "/" no necesitan escapar en HTML y no tienen un significado especial a menos que sean parte de una etiqueta o valor de atributo no cotizado. Consulte el artículo de Mathias Bynens (bajo "Dato divertido semi relacionado") para obtener más detalles.
Cuando trabaje con HTML, siempre debe citar los valores de los atributos para reducir los vectores XSS.
Argumentos:
@param cadena $ cadena la cadena para escapar.
Devolver:
@Return String Devuelve la cadena escapada.
Ejemplo:
<?php
use function _ escape ;
escape ( ' fred, barney, & pebbles ' )
// => 'fred, barney, & pebbles'
Escapa de los caracteres especiales RegExp
"^", "$", "", "", "*", "+", "?", "(", ")", "[", "]", "{ ","} "y" | " en string
.
Argumentos:
@param cadena $ cadena la cadena para escapar.
Devolver:
@Return String Devuelve la cadena escapada.
Ejemplo:
<?php
use function _ escapeRegExp ;
escapeRegExp ( ' [lodash](https://lodash.com/) ' )
// => '[lodash](https://lodash.com/)'
Convierte string
en el caso Kebab.
Argumentos:
@param cadena $ cadena la cadena para convertir.
Devolver:
@return String Devuelve la cadena Cascada de Kebab.
Ejemplo:
<?php
use function _ kebabCase ;
kebabCase ( ' Foo Bar ' )
// => 'foo-bar'
kebabCase ( ' fooBar ' )
// => 'foo-bar'
kebabCase ( ' __FOO_BAR__ ' )
// => 'foo-bar'
Convierte string
, como palabras separadas en el espacio, en minúsculas.
Argumentos:
@param cadena $ cadena la cadena para convertir.
Devolver:
@return String Devuelve la cadena en carcasa inferior.
Ejemplo:
<?php
use function _ lowerCase ;
lowerCase ( ' --Foo-Bar-- ' )
// => 'foo bar'
lowerCase ( ' fooBar ' )
// => 'foo bar'
lowerCase ( ' __FOO_BAR__ ' )
// => 'foo bar'
Convierte el primer carácter de string
en minúsculas.
Argumentos:
@param cadena $ cadena la cadena para convertir.
Devolver:
@return String Devuelve la cadena convertida.
Ejemplo:
<?php
use function _ lowerFirst ;
lowerFirst ( ' Fred ' )
// => 'fred'
lowerFirst ( ' FRED ' )
// => 'fRED'
string
en los lados izquierdo y derecho si es más corto que length
. Los personajes de relleno se truncan si no pueden dividirse uniformemente por length
.
Argumentos:
@param cadena $ cadena la cadena a la almohadilla.
@param int $ longitud la longitud del relleno.
@param cadena $ chars La cadena utilizada como relleno.
Devolver:
La cadena @return devuelve la cadena acolchada.
Ejemplo:
<?php
use function _ pad ;
pad ( ' abc ' , 8 )
// => ' abc '
pad ( ' abc ' , 8 , ' _- ' )
// => '_-abc_-_'
pad ( ' abc ' , 2 )
// => 'abc'
string
en el lado derecho si es más corto que length
. Los personajes de relleno se truncan si exceden length
.
Argumentos:
@param cadena $ cadena la cadena a la almohadilla.
@param int $ longitud la longitud del relleno.
@param cadena $ chars La cadena utilizada como relleno.
Devolver:
La cadena @return devuelve la cadena acolchada.
Ejemplo:
<?php
use function _ padEnd ;
padEnd ( ' abc ' , 6 )
// => 'abc '
padEnd ( ' abc ' , 6 , ' _- ' )
// => 'abc_-_'
padEnd ( ' abc ' , 2 )
// => 'abc'
string
en el lado izquierdo si es más corto que length
. Los personajes de relleno se truncan si exceden length
.
s Argumentos:
@param cadena $ string = '' La cadena a la almohadilla.
@param int $ longitud la longitud del relleno.
@param cadena $ chars La cadena utilizada como relleno.
Devolver:
La cadena @return devuelve la cadena acolchada.
Ejemplo:
<?php
use function _ padStart ;
padStart ( ' abc ' , 6 )
// => ' abc'
padStart ( ' abc ' , 6 , ' _- ' )
// => '_-_abc'
padStart ( ' abc ' , 2 )
// => 'abc'
Convierte string
en un entero de la radix especificada. Si radix
está undefined
o 0
, se usa una radix
de 10
a menos que string
sea hexadecimal, en cuyo caso se usa una radix
de 16
.
Nota: Este método utiliza la fundición entera incorporada de PHP, que no necesariamente se alinea con la implementación ES5 de parseInt
.
Argumentos:
@param (int | float | string) $ cadena la cadena para convertir.
@param int $ radix the radix para interpretar string
por.
Devolver:
@return int devuelve el entero convertido.
Ejemplo:
<?php
use function _ parseInt ;
parseInt ( ' 08 ' )
// => 8
Repita la cadena n
Times.
Argumentos:
@param cadena $ cadena la cadena para repetir.
@param int $ n el número de veces para repetir la cadena.
Devolver:
@Return String Devuelve la cadena repetida.
Ejemplo:
<?php
use function _ repeat ;
repeat ( ' * ' , 3 )
// => '***'
repeat ( ' abc ' , 2 )
// => 'abcabc'
repeat ( ' abc ' , 0 )
// => ''
Reemplaza las coincidencias para pattern
en string
con replacement
.
Nota: Este método se basa en String#replace
.
Argumentos:
@param cadena $ cadena la cadena para modificar.
@param cadena $ patrón El patrón para reemplazar.
@param (llamable | cadena) $ Reemplazo el reemplazo de la coincidencia.
Devolver:
@return cadena Devuelve la cadena modificada.
Ejemplo:
<?php
use function _ replace ;
replace ( ' Hi Fred ' , ' Fred ' , ' Barney ' )
// => 'Hi Barney'
Convierte string
en caso de serpiente.
Argumentos:
@param cadena $ cadena la cadena para convertir.
Devolver:
@return String Devuelve la cadena cubierta de serpiente.
Ejemplo:
<?php
use function _ snakeCase ;
snakeCase ( ' Foo Bar ' )
// => 'foo_bar'
snakeCase ( ' fooBar ' )
// => 'foo_bar'
snakeCase ( ' --FOO-BAR-- ' )
// => 'foo_bar'
Splita string
por separator
.
Nota: Este método se basa en String#split
.
Argumentos:
@param cadena $ cadena la cadena para dividir.
@param cadena $ separador El patrón de separador para dividirse por.
@param int $ limita la longitud para truncar los resultados.
Devolver:
La matriz @return devuelve los segmentos de cadena.
Ejemplo:
<?php
use function _ split ;
split ( ' a-b-c ' , ' - ' , 2 )
// => ['a', 'b']
Convierte string
para iniciar el caso.
Argumentos:
@param cadena $ cadena la cadena para convertir.
Devolver:
@return cadena Devuelve la cadena de inicio.
Ejemplo:
<?php
use function _ startCase ;
startCase ( ' --foo-bar-- ' )
// => 'Foo Bar'
startCase ( ' fooBar ' )
// => 'Foo Bar'
startCase ( ' __FOO_BAR__ ' )
// => 'FOO BAR'
Comprueba si string
comienza con la cadena de destino dada.
Argumentos:
@param cadena $ cadena la cadena para inspeccionar.
@param cadena $ Target la cadena para buscar.
@param int $ posicione el puesto para buscar.
Devolver:
@return boolean devuelve true
si string
comienza con target
, de lo contrario false
.
Ejemplo:
<?php
use function _ startsWith ;
startsWith ( ' abc ' , ' a ' )
// => true
startsWith ( ' abc ' , ' b ' )
// => false
startsWith ( ' abc ' , ' b ' , 1 )
// => true
Crea una función de plantilla compilada que puede interpolar las propiedades de datos en delimitadores "interpolar", las propiedades de datos interpolados con escapas HTML en delimitadores de "escape" y ejecutar PHP en delimitadores "evaluar". Se pueden acceder a las propiedades de datos como variables gratuitas en la plantilla. Si se da un objeto de configuración, tiene prioridad más de $templateSettings
.
Regexp $ Options ['Escape'] = _ :: $ Templatesettings ['Escape'] El delimitador HTML "Escape". Regexp $ Opciones ['Evaluate'] = _ :: $ Templatesettings ['evaluar'] el delimitador "Evaluar". Array $ opciones ['importaciones'] = _ :: $ plantlatesettings ['importaciones'] un objeto para importar a la plantilla como variables gratuitas. Regexp $ Opciones ['Interpolate'] = _ :: $ Templatesettings ['interpolate'] el delimitador "interpolar".
Argumentos:
@param cadena $ cadena la cadena de plantilla.
@Param Array $ Opciones La matriz de opciones.
Devolver:
@return Callable Devuelve la función de plantilla compilada.
Ejemplo:
<?php
use function _ template ;
// Use the "interpolate" delimiter to create a compiled template.
$ compiled = template ( ' hello <%= user %>! ' )
$ compiled ([ ' user ' => ' fred ' ])
// => 'hello fred!'
// Use the HTML "escape" delimiter to escape data property values.
$ compiled = template ( ' <b><%- value %></b> ' )
$ compiled ([ ' value ' => ' <script> ' ])
// => '<b><script></b>'
// Use the "evaluate" delimiter to execute JavaScript and generate HTML.
$ compiled = template ( ' <% foreach($users as $user) { %><li><%- user %></li><% }%> ' )
$ compiled ([ ' users ' => [ ' fred ' , ' barney ' ] ])
// => '<li>fred</li><li>barney</li>'
// Use the internal `print` function in "evaluate" delimiters.
$ compiled = template ( ' <% print("hello " + $user)%>! ' )
$ compiled ([ ' user ' => ' barney ' ])
// => 'hello barney!'
// Use backslashes to treat delimiters as plain text.
$ compiled = template ( ' <%= " \ <%- value % \ >" %> ' )
$ compiled ([ ' value ' => ' ignored ' ])
// => '<%- value %>'
// Use the `imports` option to import functions or classes with aliases.
$ text = ' <% all($users, function($user) { %><li><%- user %></li><% })%> '
$ compiled = template( $ text , { ' imports ' : { ' _each ' : ' all ' } })
$ compiled ([ ' users ' => [ ' fred ' , ' barney ' ] ])
// => '<li>fred</li><li>barney</li>'
// Use custom template delimiters.
_:: $ templateSettings [ ' interpolate ' ] = ' {{([sS]+?)}} '
$ compiled = template ( ' hello {{ user }}! ' )
$ compiled ([ ' user ' => ' mustache ' ])
// => 'hello mustache!'
// Use the `source` property to access the compiled source of the template
template ( $ mainText )-> source ;
Convierte string
, en su conjunto, en minúsculas
Argumentos:
@param cadena $ cadena la cadena para convertir.
Devolver:
@return String Devuelve la cadena en carcasa inferior.
Ejemplo:
<?php
use function _ toLower ;
toLower ( ' --Foo-Bar-- ' )
// => '--foo-bar--'
toLower ( ' fooBar ' )
// => 'foobar'
toLower ( ' __FOO_BAR__ ' )
// => '__foo_bar__'
Convierte string
, en su conjunto, en mayúsculas
Argumentos:
@param cadena $ cadena la cadena para convertir.
Devolver:
La cadena @return devuelve la cadena cubierta superior.
Ejemplo:
<?php
use function _ toUpper ;
toUpper ( ' --foo-bar-- ' )
// => '--FOO-BAR--'
toUpper ( ' fooBar ' )
// => 'FOOBAR'
toUpper ( ' __foo_bar__ ' )
// => '__FOO_BAR__'
Elimina espacios en blanco o caracteres principales o caracteres especificados de string
.
Argumentos:
@param cadena $ cadena la cadena para recortar.
@param cadena $ chars los caracteres para recortar.
Devolver:
@return cadena Devuelve la cadena recortada.
Ejemplo:
<?php
use function _ trim ;
trim ( ' abc ' )
// => 'abc'
trim ( ' -_-abc-_- ' , ' _- ' )
// => 'abc'
Elimina el espacio en blanco o caracteres especificados de string
.
Argumentos:
@param cadena $ cadena la cadena para recortar.
@param cadena $ chars los caracteres para recortar.
Devolver:
@return cadena Devuelve la cadena recortada.
Ejemplo:
<?php
use function _ trimEnd ;
trimEnd ( ' abc ' )
// => ' abc'
trimEnd ( ' -_-abc-_- ' , ' _- ' )
// => '-_-abc'
Elimina espacios en blanco o caracteres especificados de string
.
Argumentos:
@param cadena $ cadena la cadena para recortar.
@param cadena $ chars los caracteres para recortar.
Devolver:
@return cadena Devuelve la cadena recortada.
Ejemplo:
<?php
use function _ trimStart ;
trimStart ( ' abc ' )
// => 'abc '
trimStart ( ' -_-abc-_- ' , ' _- ' )
// => 'abc-_-'
Trunca string
si es más larga que la longitud máxima de cadena dada. Los últimos caracteres de la cadena truncada se reemplazan con la cadena de omisión que es predeterminada a "...".
Longitud = 30 la longitud máxima de la cadena. omisión = '...' La cadena para indicar que se omite el texto. Separador El patrón de separador para truncar.
Argumentos:
@param cadena $ cadena la cadena para truncar.
@Param Array $ Opciones El objeto Opciones.
Devolver:
@Return String Devuelve la cadena truncada.
Ejemplo:
<?php
use function _ truncate ;
truncate ( ' hi-diddly-ho there, neighborino ' )
// => 'hi-diddly-ho there, neighbo...'
truncate ( ' hi-diddly-ho there, neighborino ' , [
' length ' => 24 ,
' separator ' => ' '
])
// => 'hi-diddly-ho there,...'
truncate ( ' hi-diddly-ho there, neighborino ' , [
' length ' => 24 ,
' separator ' => ' /,? +/ '
])
// => 'hi-diddly-ho there...'
truncate ( ' hi-diddly-ho there, neighborino ' , [
' omission ' => ' [...] '
])
// => 'hi-diddly-ho there, neig [...]'
El inverso de escape
Este método convierte las entidades HTML &
, <
, >
, "
y '
en string
a sus caracteres correspondientes.
Argumentos:
@param cadena $ cadena la cadena a unescape.
Devolver:
@return String Devuelve la cadena Unescaped.
Ejemplo:
<?php
use function _ unescape ;
unescape ( ' fred, barney, & pebbles ' )
// => 'fred, barney, & pebbles'
Convierte string
, como palabras separadas en el espacio, en mayúsculas.
Argumentos:
@param cadena $ cadena la cadena para convertir.
Devolver:
@Return String Devuelve las cadenas de carcasa superior.s
Ejemplo:
<?php
use function _ upperCase ;
upperCase ( ' --foo-bar ' )
// => 'FOO BAR'
upperCase ( ' fooBar ' )
// => 'FOO BAR'
upperCase ( ' __foo_bar__ ' )
// => 'FOO BAR'
Convierte el primer carácter de string
en mayúsculas.
Argumentos:
@param cadena $ cadena la cadena para convertir.
Devolver:
@return String Devuelve la cadena convertida.
Ejemplo:
<?php
use function _ upperFirst ;
upperFirst ( ' fred ' )
// => 'Fred'
upperFirst ( ' FRED ' )
// => 'FRED'
Divide string
en una matriz de sus palabras.
Argumentos:
@param cadena $ cadena la cadena para inspeccionar.
@param cadena $ patrón El patrón para coincidir con palabras.
Devolver:
La matriz @return devuelve las palabras de string
.
Ejemplo:
<?php
use function _ words ;
words ( ' fred, barney, & pebbles ' )
// => ['fred', 'barney', 'pebbles']
words ( ' fred, barney, & pebbles ' , ' /[^, ]+/g ' )
// => ['fred', 'barney', '&', 'pebbles']
Intenta invocar func
, devolviendo el resultado o el objeto de error atrapado. Cualquier argumento adicional se proporciona a func
cuando se invoca.
s Argumentos:
@param llamable $ funce la función para intentar.
@param array <int, mixed> $ args los argumentos para invocar func
.
Devolver:
@return (mixto | showable) Devuelve el resultado o objeto de error func
.
Ejemplo:
<?php
use function _ attempt ;
// Avoid throwing errors for invalid PDO data source.
$ elements = attempt ( function () {
new PDO ( null );
});
if ( isError ( $ elements )) {
$ elements = [];
}
Valor de verificación para determinar si se debe devolver un valor predeterminado en su lugar. El valor predeterminado se devuelve si el valor es nan o nulo.
Argumentos:
@param mixto $ valor cualquier valor.
@Param mixed $ defaultValue valor para devolver cuando $ valor es nulo o nan
Devolver:
@return mixta devuelve value
.
Ejemplo:
<?php
use function _ defaultTo ;
$ a = null ;
defaultTo ( $ a , " default " );
// => "default"
$ a = " x " ;
defaultTo ( $ a , " default " );
// => "x"
Este método devuelve el primer argumento que recibe.
Argumentos:
@param mixto $ valor cualquier valor.
Devolver:
@return mixta devuelve value
.
Ejemplo:
<?php
use function _ identity ;
$ object = [ ' a ' => 1 ];
identity ( $ object ) === $ object ;
// => true
Crea una función que devuelve el valor en path
de un objeto dado.
Argumentos:
@param (array | string) $ ruta La ruta de la propiedad para obtener.
Devolver:
@return Callable Devuelve la función de nuevo accesor.
Ejemplo:
<?php
use function _ property ;
$ objects = [
[ ' a ' => [ ' b ' => 2 ] ],
[ ' a ' => [ ' b ' => 1 ] ]
];
map ( $ objects , property ( ' a.b ' ));
// => [2, 1]
map ( sortBy ( $ objects , property ([ ' a ' , ' b ' ])), ' a.b ' );
// => [1, 2]