Conceptos básicos de PHP - Parte 10 Introducción Esto es parte de mi serie 10, Fundamentos de PHP. En PHP una matriz es un mapa ordenado donde los valores están asociados a las teclas. Le explico todo lo que en este artículo y el uso de una matriz de PHP. Matriz PHP es diferente de las matrices en otros programas. Nota: Si no puede ver el código o si cree que falta algo (enlace roto, la imagen ausente), simplemente en contacto conmigo en [email protected]. Es decir, en contacto conmigo para el más mínimo problema que tenga acerca de lo que está leyendo.
Algunos ejemplos de Array contenido Imagínese que usted es un propietario de una pequeña empresa, y tiene 10 empleados. En su programa de PHP, usted puede tener sus nombres en una matriz. Cada elemento de la lista que aquí es un nombre de pila. Deje que la lista sea: 1 Juan 2 3 Pedro María Agustín 4 5 6 Angela Susan Martin 7 8 9 Gracia Perla 10 Simon En otros programas de los enteros de la lista son llamados índices y los primeros nombres se llaman valores. En PHP los enteros se llaman las llaves y los primeros nombres todavía se llaman valores.
Ahora, consideremos cinco primeros nombres de los estudiantes en una escuela secundaria. La siguiente tabla muestra los nombres de pila, por un lado, y la edad y el grado en el otro lado. Anthony "10, 7" Catherine "10, 8" Ursula "11, 8" Gladys "13, 9" Sandra "10, 7" Aquí las claves son los nombres de pila. Los valores son cadenas. En cada cadena tiene la edad y grado, que están separados por una coma. Una matriz de PHP puede tomar la primera mesa o esta tabla. Una matriz de PHP se compone de pares clave /valor. Los valores son generalmente literales.
Ahora, las teclas no sólo tienen que ser todos los números enteros o todos los textos. Se pueden mezclar; enteros y texto, como en el siguiente cuadro hipotético: foo 13 "hombre de mañana" niño de 9 "bar" hombre de 23 5 "mujer" Aquí están las llaves foo, 9, hombre, 5 y chico. Los valores son 13, "bar", 23, "mujer" y "hombre de mañana". Nota; al poner una mesa en una matriz, si la clave es texto, tiene que estar entre comillas simples o dobles. También tenga en cuenta ese elemento (valor) número de la posición de conteo empieza desde cero y no 1.
Nota: Los valores de matriz se denominan elementos. Creación de una matriz Puede crear una matriz con los pares clave /valor, al mismo tiempo o puede crear una matriz vacía, y luego poner en los pares clave /valor después. Para crear una matriz para la última tabla de arriba, lo haría, $ myArr = array ("foo" => 13, 9 => "barra", "hombre" => 23, 5 => "mujer", "niño" => "hombre de mañana"); $ myArr es un nombre que el programador le da para la matriz. Es seguido por el operador de asignación; entonces la palabra reservada, array; a continuación entre paréntesis.
En los paréntesis, usted tiene los pares clave /valor. Cada tecla que es texto debe estar entre comillas simples o dobles. Los pares de clave /valor están separados por comas. Observe el uso de => en cada par clave /valor. Cada tecla que es un entero no tiene que estar entre comillas. Cada valor que es un número (entero o flotante) no tiene que estar entre comillas. Puede crear una matriz vacía y luego poner los pares de valores clave más tarde. Para crear una matriz vacía usted hace esto, $ myArr = array (); $ myArr es sólo un nombre que das.
Para decirlo en los pares clave /valor de la última mesa, usted hace $ myArr ["foo"] = 13; $ myArr [9] = "bar"; $ myArr ["hombre"] = 23; $ myArr [5] = "mujer"; $ myArr ["chico"] = "hombre de mañana"; Para cada par clave /valor, se empieza con la variable de la matriz. Esto es seguido inmediatamente por corchetes. Dentro de los corchetes, usted tiene la llave. Si la clave está en el texto, es entre comillas (simples o dobles). Si la clave es un entero, no está entre comillas. Esto es seguido por el operador de asignación y luego el valor.
Si el valor es una cadena (simple o doble), es entre comillas; si se trata de un número, no está entre comillas. Nota: una clave puede ser un número entero, pero no puede ser un flotador. Acceso a un valor de matriz La sintaxis para acceder a un valor de matriz es, $ nombreArray [clave] clave de texto debe estar entre comillas.
Así que si quieres tener acceso al tercer valor para la matriz anterior, lo haría, $ myArr ["hombre"] El valor devuelto se puede asignar a una variable, algo como: $ myVar = $ myArr ["hombre"]; Leer y tratar el siguiente código, donde se muestra el tercer valor doble: $ myArr = array (); $ myArr ["foo"] = 13; $ myArr [9] = "bar"; $ myArr ["hombre"] = 23; $ myArr [5] = "mujer"; $ myArr ["chico"] = "hombre de mañana"; echo $ myArr ["hombre"], "$ myVar = $ myArr [" hombre "]; echo $ myVar;?> Cambiar el valor de una clave Cambia un valor para una clave con sólo asignar un nuevo valor para la clave.
Para cambiar el valor de la cuarta clave de la tabla anterior, usted haría algo como:. $ myArr [5] = "niña"; añadiendo un par clave /valor con la Sintaxis Soporte Plaza Anexa medios añaden en la parte inferior Anexar un clave /valor par con sólo asignar el nuevo valor para la nueva clave con la sintaxis de corchetes, algo así como:.
$ myArr ["newkey"] = "nuevo valor"; Usted puede decidir no tener una llave En ese caso hacer algo como: $ myArr [] = "nuevo valor"; En este caso el intérprete le da un entero como clave El número entero dado es el mayor número entero ya presente como clave en la matriz, más 1. En la tabla de arriba de la llave mixta. tipos, sería 10, ya que la mayor presencia clave entero es 9. ¿Qué pasa con el caso en el que la matriz no tiene ninguna tecla número entero? En tal caso, el número entero dado es cero. Después de que la matriz tendría un entero como la clave y el resto sería textos.
Funciones de Matrices Hay muchas funciones que puede utilizar para afectar a una matriz. Les daré unos pocos. Nota: cuando se llama a una función, es necesario utilizar paréntesis. La función de conteo Esta función le da el número de elementos (valores) de la matriz. La sintaxis simplificada para esto es: int count ($ nombreArray) El int significa que la función devuelve un entero, que es el número de elementos en el array. Puede asignar el valor de retorno a una variable o puede utilizar la función de conteo de alguna expresión.
Lea y pruebe lo siguiente: $ myArr = array (); $ myArr ["foo"] = 13; $ myArr [9] = "bar"; $ myArr ["hombre"] = 23; $ myArr [5] = "mujer"; $ myArr ["chico"] = "hombre de mañana"; recuento de eco ($ myArr); ?> El valor devuelto es 5. La función array_shift Esta función elimina el primer elemento de una matriz y devuelve dicho elemento.
Leer y tratar el siguiente código: $ myArr = array (); $ myArr ["foo"] = 13; $ myArr [9] = "bar"; $ myArr ["hombre"] = 23; $ myArr [5] = "mujer"; $ myArr ["chico"] = "hombre de mañana"; eco array_shift ($ myArr); echo "recuento de eco ($ myArr);> una sintaxis simplificada para la función array_shift es:? array_shift mixto ($ nombreArray) Aquí, mezclado, significa que el valor devuelto puede ser de cualquier tipo puede ser un flotador o una cadena, por ejemplo. .
Si se trata de una cadena, se devuelve sin las comillas El array_pop función La función array_pop elimina el último elemento de una matriz y devuelve dicho elemento Leer y pruebe lo siguiente:.. $ myArr = array (); $ myArr ["foo "] = 13; $ myArr [9] =" bar "; $ myArr [" hombre "] = 23; $ myArr [5] =" mujer "; $ myArr [" chico "] =" hombre de mañana "; echo array_pop ($ myArr); echo "recuento de eco ($ myArr); ?> Una sintaxis simplificada para la función es: array_pop mixto ($ nombreArray) la función de clasificación Esta función ordena los valores de una matriz, organizándolos en orden alfabético y /o de menor a mayor.
Leer y tratar el siguiente código: $ myArr = array (); $ myArr ["foo"] = 13; $ myArr [9] = "bar"; $ myArr ["hombre"] = 23; $ myArr [5] = "mujer"; $ myArr ["chico"] = "hombre de mañana"; sort ($ myArr); print_r ($ myArr); ?> La función print_r es similar a la construcción de eco. Sin embargo, print_r función puede enviar los elementos individuales de una matriz cuando tiene la variable de matriz como argumento. La construcción de eco no puede hacer esto cuando se tiene la variable de matriz como argumento.
En su resultado para el código anterior, no se preocupe mucho de los índices entre corchetes. Por ahora sólo sé que los valores de la matriz han sido ordenados. Una sintaxis simplificada para la función de clasificación es: bool sort ($ nombreArray) Aquí, bool significa que el valor de retorno es verdadera o falsa. Si el proceso de clasificación se ha realizado correctamente, se devuelve true. Si no se ha realizado correctamente, se devuelve falso. Los array_push función La función array_push añade uno o más valores a la final de la matriz.
Puede agregar sólo los valores; no puede agregar las teclas correspondientes. En este caso el intérprete le da números enteros como claves. Lea y pruebe lo siguiente: $ myArr = array (); $ myArr ["foo"] = 13; $ myArr [9] = "bar"; $ myArr ["hombre"] = 23; $ myArr [5] = "mujer"; $ myArr ["chico"] = "hombre de mañana"; array_push ($ myArr "penúltima", "último"); print_r ($ myArr); ?> La matriz no se ha ordenado, por lo que en el resultado, las teclas están dados por la función print_r.
Tenga en cuenta que 10 y 11, que son los siguientes números enteros después de 9 (el más alto índice disponible) se les ha dado como claves para los valores añadidos, en el resultado. Una sintaxis simple para la función array_push es: int array_push ($ nombreArray, valor, valor, valor); El primer elemento de los paréntesis es la variable de matriz, el resto de los elementos son los valores, por lo general en sus formas literales. Usted puede tener uno o más valores, no es estrictamente tres como se indicó anteriormente. Todos los artículos en los paréntesis están separados por comas.
El valor devuelto de la función es un entero, que es el nuevo número total de elementos (recuento) de la matriz. En el caso anterior, es 7. La función unset La función unset destruye uno o más pares clave /valor en una matriz. Leer y tratar el siguiente código: $ myArr = array (); $ myArr ["foo"] = 13; $ myArr [9] = "bar"; $ myArr ["hombre"] = 23; $ myArr [5] = "mujer"; $ myArr ["chico"] = "hombre de mañana"; unset ($ myArr [9], $ myArr ["hombre"]); print_r ($ myArr); ?>