Se encontrará con matrices PHP y funciones de matriz PHP con una regularidad asombrosa durante el curso de su diseño web y desarrollo web. Tiene sentido, porque las matrices son uno de los tipos de datos más útiles que podemos usar. Entonces, nos hizo pensar, ¿qué obtendría si combinara las aplicaciones PHP CMS más populares del mundo y vierte todo su código fuente en un solo depósito, y luego analice sus funciones de matriz más utilizadas? Bueno, ¡obtendrás esta increíble lista, por supuesto! Esta es una excelente manera de mantener sus habilidades agudas o simplemente actualizadas cuando trabaja con matrices en PHP. Vamos a ver.

  • 1formación()
  • 2is_array ()
  • 3in_array ()
  • 4array_merge ()
  • 5array_keys ()
  • 6array_key_exists ()
  • 7array_shift ()
  • 8array_push ()
  • 9array_pop ()
  • 10array_values ​​()
  • 11array_map ()
  • 12array_unique ()
  • 13array_slice ()
  • 14array_diff ()
  • 15array_search ()
  • dieciséisarray_reverse ()
  • 17array_unshift ()

1. matriz ()

Este pequeño hombre práctico crea una matriz para ti. Aquí crearemos una matriz asociativa con dos claves y luego colocaremos una matriz asociativa dentro de una y una matriz indexada dentro de la otra.

Y dice algo como esto, HIT IT:

Formación
(
    [sitios web] => Matriz
        (
            [Buscar] => Google
            [Social] => Facebook
            [Noticias] => NY Times
        )

    [amigos] => Matriz
        (
            [0] => Chris
            [1] => Jim
            [2] => Lynn
            [3] => Jeff
            [4] => Joanna
        )

)

Obtenga más información array()en http://us1.php.net/manual/en/function.array.php


2. is_array ()

Comprueba si la variable es una matriz. Devuelve VERDADERO si la variable es una matriz y FALSO en caso contrario. Usado así:

Obtenga más información is_array()en http://us2.php.net/manual/en/function.is-array.php


3. in_array ()

A menudo, es posible que deseemos verificar si un cierto valor está en una de nuestras matrices. Recuerde de nuestro ejemplo anterior que asignamos una matriz indexada de amigos a la clave 'amigos' de nuestra matriz de ejemplo. Veamos si se incluyó a 'Jeff'.

Ah, ja, resulta que lo estaba. Con in_array(), el primer argumento es lo que está buscando y el segundo argumento es la matriz que registrará. Obtenga más información in_array()en http://us3.php.net/manual/en/function.in-array.php


4. array_merge

Recuerde que teníamos algunos sitios web y amigos en la matriz del ejemplo anterior. De hecho, almacenamos una matriz de valores en esas matrices. Bueno, me siento perezoso y no quiero trabajar con dos matrices. Solo quiero trabajar con uno, ¡así que fusionemos esos dos arreglos!

Y bingo bango, ¡ahora tenemos una matriz creada de dos!

Formación
(
    [Buscar] => Google
    [Social] => Facebook
    [Noticias] => NY Times
    [0] => Chris
    [1] => Jim
    [2] => Lynn
    [3] => Jeff
    [4] => Joanna
)

Obtenga más información array_merge()en http://us3.php.net/manual/en/function.array-merge.php


5. array_keys

Ahora extraigamos todas las claves de nuestra $mergedmatriz agregando estas líneas:

¡Y ahora puede ver que las claves de nuestra $mergedmatriz se convierten en los valores de la matriz devuelta array_keys()!

Formación
(
    [0] => Buscar
    [1] => Social
    [2] => Noticias
    [3] => 0
    [4] => 1
    [5] => 2
    [6] => 3
    [7] => 4
)

Obtenga más información array_keys()en http://us3.php.net/manual/en/function.array-keys.php


6. array_key_exists ()

Con array_key_exists()podemos realizar una validación similar a la que haríamos con isset()Pasas una clave para buscar y una matriz para buscar, y la función devolverá VERDADERO si la clave existe en la matriz proporcionada. Basándonos en nuestro ejemplo anterior, veamos si se establece la séptima clave:

Obtenga más información array_key_exists()en http://us3.php.net/manual/en/function.array-key-exists.php


7. array_shift ()

Recordemos nuestro original $arrayque tenía dos claves, 'sitios web' y 'amigos'. Quiero que cada tecla tenga su propio nombre de variable en el programa, ¿cómo puedo hacer eso? Bueno, apliquemos la array_shift()función a $array, devuelva el resultado a una variable $shiftedy examinemos ambas variables.

Puede ver que la clave 'sitios web', que es la primera en la matriz, se desplazó fuera de la matriz, mientras que la clave 'amigos' se dejó intacta. ¡Increíble!

// print_r ($ matriz); 'amigos' todavía está en el original
Formación
(
    [amigos] => Matriz
        (
            [0] => Chris
            [1] => Jim
            [2] => Lynn
            [3] => Jeff
            [4] => Joanna
        )

)
// print_r ($ desplazado); 'sitios web' fue eliminado
Formación
(
    [Buscar] => Google
    [Social] => Facebook
    [Noticias] => NY Times
)

Obtenga más información array_shift()en http://us3.php.net/manual/en/function.array-shift.php


8. array_push

Nuestra $shiftedvariable recién creada está loca. Quiere volver a la $arrayvariable original para deshacer el cambio que hemos causado. Bueno, intentemos aplicar la array_push()función al original $array$shiftedretroceder al final de la matriz:

Puede ver que los amigos están ahora en la primera posición y la $shiftedmatriz se agrega nuevamente a la matriz original. ¡Tenga en cuenta que array_push()no mantiene intactos los pares clave => valor! Hemos perdido nuestra clave de 'sitios web' (ahora es 0).

Formación
(
    [amigos] => Matriz
        (
            [0] => Chris
            [1] => Jim
            [2] => Lynn
            [3] => Jeff
            [4] => Joanna
        )

    [0] => Matriz
        (
            [Buscar] => Google
            [Social] => Facebook
            [Noticias] => NY Times
        )

)

Obtenga más información array_push()en http://us3.php.net/manual/en/function.array-push.php


9. array_pop

El señor voluble $shiftedestá loco por perder la clave de su 'sitio web'. No voy a estar en esto $arraysi no puedo tener mi clave original. array_pop()Está bien, entonces, lo estaremos al final de esto $arrayuna vez más.

Y ahí lo tiene, señor $shifted: se quitó y se colocó nuevamente en su propia matriz.

Formación
(
    [amigos] => Matriz
        (
            [0] => Chris
            [1] => Jim
            [2] => Lynn
            [3] => Jeff
            [4] => Joanna
        )

)

Formación
(
    [Buscar] => Google
    [Social] => Facebook
    [Noticias] => NY Times
)

Obtenga más información array_pop()en http://us3.php.net/manual/en/function.array-pop.php


10.matriz_valores

¿Recuerdas cuando creamos la $mergedmatriz anteriormente y obtuvimos una pequeña matriz ingeniosa con este aspecto?

Formación
(
    [Buscar] => Google
    [Social] => Facebook
    [Noticias] => NY Times
    [0] => Chris
    [1] => Jim
    [2] => Lynn
    [3] => Jeff
    [4] => Joanna
)

Bueno, no estoy loco por el hecho de que algunas de esas claves tengan nombre y otras estén indexadas. Me gustaría tomar solo los valores de la $mergedmatriz enumerados solo con índices numéricos. Usemos la array_values()función para hacer precisamente eso.

Ah, sí, ahí está, mi matriz combinada con un formato agradable con índices ordenados 0 - 7 cortesía de array_values().

Formación
(
    [0] => Google
    [1] => Facebook
    [2] => NY Times
    [3] => Chris
    [4] => Jim
    [5] => Lynn
    [6] => Jeff
    [7] => Juana
)

Obtenga más información array_values()en http://us3.php.net/manual/en/function.array-values.php


11. array_map

Ok, todo este asunto de las matrices me hace necesitar un descanso. Vayamos de compras y compremos algunos gadgets nuevos y geniales, tal vez un nuevo iPad Air. Ya sabes, estos días te cobran impuestos sobre todo, así que cuando vayamos de compras, no olvidemos que tenemos que pagar un 5% de impuesto sobre las ventas. Usaremos nuestra array_map()función para ayudarnos allí.

Ok, compruébalo. Teníamos nuestra gama de productos $itemspara comprar, pero necesitábamos calcular rápidamente el impuesto sobre las ventas para cada artículo a una tasa del 5%. Bueno, con array_map()podemos aplicar una función a cada elemento de la matriz y devolver una matriz con los resultados recién procesados, en este caso nuestro $finalcost- ¡ordenado!

Formación
(
    [0] => 105,00
    [1] => 52,50
    [2] => 262,50
    [3] => 73,50
    [4] => 525,00
)

Obtenga más información array_map()en http://us3.php.net/manual/en/function.array-map.php


12. array_unique

Usted sabe que hay muchos blogs en marcha y los motores de búsqueda quieren asegurarse de que solo indexen artículos únicos. Nuestra pequeña araña de Internet encontró algunos artículos a continuación y los puso en el archivo $indexNecesitamos asegurarnos de que sean únicos, sin embargo, ¡quizás podamos usarlos array_unique()para ayudarnos!

¡Increíble! ¡Funcionando según lo diseñado! Nos array_unique()deshicimos de ese valor duplicado en la matriz y nos devolvió una nueva matriz con solo títulos únicos. ¿Viste el título duplicado en la matriz original?

Formación
(
    [0] => Cómo comer manzanas
    [1] => Surfeando de forma segura en una piscina de olas
    [2] => Los mejores alimentos para el desayuno
    [4] => 25 consejos para bloguear nirvana
    [5] => La mejor receta de ponche de huevo para las fiestas
)

Obtenga más información array_unique()en http://us3.php.net/manual/en/function.array-unique.php


13. array_slice

Ahora que lo pienso, en lugar de usar eso array_unique()en nuestro $index, sigamos adelante y realicemos una cirugía en esa matriz y extraiga solo los elementos internos, dejando la primera y la última entrada a sus propios dispositivos.

Y ahí lo tiene, al pasar la matriz en la que trabajar, el desplazamiento inicial y la longitud de nuestra extracción, hemos eliminado con éxito las 4 entradas centrales de nuestra matriz de 6 elementos. ¡Bravo!

Formación
(
    [0] => Surfeando de forma segura en una piscina de olas
    [1] => Los mejores alimentos para el desayuno
    [2] => Cómo comer manzanas
    [3] => 25 consejos para bloguear nirvana
)

Obtenga más información array_slice()en http://us3.php.net/manual/en/function.array-slice.php


14. array_diff

Bien amigos, nuestra araña de Internet ha estado ocupada y ha creado un índice actualizado después de un tiempo. Nos gustaría examinar nuestro primer índice en comparación con el segundo y ver qué hay de nuevo. ¡Hagámoslo con nuestra array_diff()función!

Increíble. Nuestra araña de Internet ha encontrado 3 nuevos artículos en Internet titulados, 'Matrices con estilo', 'PHP en la empresa' y 'Douglas Crockford declara PHP como su idioma favorito'. Al pasar nuestro índice actualizado y el índice original a la array_diff()función, nos devolvió solo los nuevos resultados.

Formación
(
    [6] => Matrices con estilo
    [7] => PHP en la empresa
    [8] => Douglas Crockford declara que PHP es su idioma favorito
)

Obtenga más información array_diff()en http://us3.php.net/manual/en/function.array-diff.php

15. array_search

Mi amigo me estaba contando sobre un artículo interesante llamado 'PHP en la empresa', me pregunto si nuestro índice actualizado pudo capturarlo ya. Averigüemos con array_search();

Bueno, ¿no es genial? Vemos que, de hecho, está en el índice en la posición 7, según lo devuelto porarray_search()

Obtenga más información array_search()en http://us3.php.net/manual/en/function.array-search.php


16. array_reverse

Cuando desee poner una matriz al revés o al derecho, puede usar la array_reverse()función. He agregado algunos elementos a nuestro original $arraypara que podamos tener una mejor idea de cómo array_reverse()trata la matriz con propiedades asociativas e indexadas.

Y aquí vemos los resultados de aplicar el array_reverse()a nuestro$array

// antes de reversa
Formación
(
    [sitios web] => Matriz
        (
            [Buscar] => Google
            [Social] => Facebook
            [Noticias] => NY Times
        )

    [amigos] => Matriz
        (
            [0] => Chris
            [1] => Jim
            [2] => Lynn
            [3] => Jeff
            [4] => Joanna
        )

    [0] => 16
    [1] => 99
    [2] => 13
    [nuevo amigo] => Ken
)

// después de reversa
Formación
(
    [nuevo amigo] => Ken
    [0] => 13
    [1] => 99
    [2] => 16
    [amigos] => Matriz
        (
            [0] => Chris
            [1] => Jim
            [2] => Lynn
            [3] => Jeff
            [4] => Joanna
        )

    [sitios web] => Matriz
        (
            [Buscar] => Google
            [Social] => Facebook
            [Noticias] => NY Times
        )

)

Obtenga más información array_reverse()en http://us3.php.net/manual/en/function.array-reverse.php


17. array_unshift

Hemos visto lo fácil que es agregar elementos al final de una matriz, pero ¿qué pasa si necesitamos anteponer algo a nuestra matriz? Bueno, ahí es donde array_unshift()entra nuestro pequeño ingenioso . Veamos cómo funciona agregando un interés de 'música' a nuestra matriz:

¡Muy bien entonces! ¡Mira ese interés por la música al comienzo de nuestra gama!

Formación
(
    [0] => música
    [sitios web] => Matriz
        (
            [Buscar] => Google
            [Social] => Facebook
            [Noticias] => NY Times
        )

    [amigos] => Matriz
        (
            [0] => Chris
            [1] => Jim
            [2] => Lynn
            [3] => Jeff
            [4] => Joanna
        )

    [1] => 16
    [2] => 99
    [3] => 13
    [nuevo amigo] => Ken
)

Tal vez prefiera anteponer un valor de clave asociativo en lugar de un valor numérico, en ese caso, simplemente puede agregar su matriz original a un par de valor clave de la siguiente manera:

Formación
(
    [intereses] => música
    [sitios web] => Matriz
        (
            [Buscar] => Google
            [Social] => Facebook
            [Noticias] => NY Times
        )

    [amigos] => Matriz
        (
            [0] => Chris
            [1] => Jim
            [2] => Lynn
            [3] => Jeff
            [4] => Joanna
        )

    [0] => 16
    [1] => 99
    [2] => 13
    [nuevo amigo] => Ken
)

Bueno, ahí lo tienen amigos, ¡un viaje épico a través de las funciones de matriz de PHP más utilizadas! También le puede gustar nuestra lista de funciones comunes de WordPress.