Usuario:ManuelRomero/php/arrays/concepto

{|cellpadding="5" cellspacing="6" style="width:100%;background:#DFFFFF; border-style:solid; border-width:2px; border-color:#0066FF;"
 * width="100%" valign="top" style="padding: 0; margin:0px;" |

Arrays

 * Un tipo de datos compuesto es aquel que te permite almacenar más de un valor.
 * En PHP puedes utilizar dos tipos de datos compuestos: el array y el objeto.
 * Los objetos los veremos más adelante.


 * Cada miembro del array se almacena en una posición a la que se hace referencia utilizando un valor clave.


 * Depediendo del valor de la posición podemos clasificar los arraiis de dos tipos
 * 1) Indexado. Cada valor es un entero que indica su posición, empezando por cero.
 * 2) Asociativo. El valor de cada posición tiene un significado diferente a la posición que ocupa y puede ser de cualquier tipo


 * Arrays asociativos Vs indexados

Array numéricos o indexados

 * Clasificación en función de la clave que llevan
 * 1) Clave numérica posicional : La clave especifica la posicion de cada elemento
 * 2) Clave con valor: La clave tiene un significado por sí mismo y tiene asociado un valor
 * Arrays indexados
 * En los arrays numéricos empezamos por 0
 * En funcion del tipo de índices que tenga puede ser unidimensional o multidimensional (varios índices).

Trabajar con un array

 * A la hora de trabajar con arrays, hay que saber operar con ellos
 * 1) Crear o definir un array
 * 2) Asignar, agregar valores al array
 * 3) Leer elementos del array
 * 4) Borrar elementos del array

Crear un array

 * Podemos usar el operador array;
 * A partir de la versión 5.3 se puede directamente usar el operador []
 * Vemos como crear un array
 * En php no hay que especificar ni índice ni lógicamente tipo
 * El array como hemos comentado va a ser un conjunto de elementos, cada tipo de cada elemento dependerá del valor que contenga en cada momento, y por supuesto puede ser modificado (tanto el valor como el tipo).


 * Crear un array

Escribir en un array

 * Simplemento hay que asignar un valor a una posición del array
 * Al ser indexado, si no se pone valor en índice se pondrá una unidad más al último valor asignado
 * Si pongo un valor superior al número de índices, el siguiente elemento estará en una posición mas


 * Escribir en un array
 * Podemos ver gráficamente como queda el array
 * En realidad 	las posiciones no especificadas no existen


 * Vemos como la posición 2,3 y 4 no van a existir con valores en el array
 * Las puedo usar expícitamente

Leer un array
Simplemente accedemos a su posición por el índice
 * Hemos de diferenciar entre dos conceptos
 * Leer un elemento de un array

count($nombreArray);
 * Recorrer un array
 * Tenemos difernetes modos de recorre un array, pues el entorno nos ofrece diferentes modos
 * Es una función que nos dice cuantos elementos tiene un array que le pasamos como argumentos
 * Ejemplo


 * Recorrer un array
 * Vamos a usarla con un ejemplo


 * Recorrer un array
 * Vemos que si todos los elementos están seguidos este funciona bien, pero si no es así no funcioría correctamete


 * Recorrer un array
 * Es lo mismo que hacer

count($array)
 * Existen muchas funciones asociadas a los arrays
 * me da el número de elementos.

Ver el contenido de un array

 * Podemos usar la función ya conocida var_dump
 * También podemos usar la fucnion print_r.

Funciones para manejar matrices

 * Tamaño: count, sizeof
 * Operador +: concatena dos matrices
 * Recorrer una matriz next, prev, reset, current,key, reset
 * busqueda preg_grep, array_search, in_array
 * Ordenar sort
 * Aquí tenemos un listado de todas las funciones, hay muchas muchas http://es1.php.net/manual/en/ref.array.php


 * Para hacer referencia a los elementos almacenados en un array, tienes que utilizar el valor clave entre corchetes:


 * Es interesante recordar que en PHP puedes crear también arrays de varias dimensiones almacenando otro array en cada uno de los elementos de un array.


 * Para hacer referencia a los elementos almacenados en un array multidimensional, debes indicar las claves para cada una de las dimensiones:
 * En PHP no es necesario que indiques el tamaño del array antes de crearlo.
 * Ni siquiera es necesario indicar que una variable concreta es de tipo array.
 * Como ya hemos visto, simplemente puedes comenzar a asignarle valores:


 * En PHP tampoco es necesario que especifiques el valor de la clave.
 * Al omitirla el array se irá llenando a partir de la última clave numérica existente, o de la posición 0 si no existe ninguna:

Variables globales Vs superglobales

 * Ya hemos visto como en php una variable tiene el ámbito en el cual es accesible y visible
 * Las variables son locales a la función en la cual aparecen, si queremos acceder dentro de una función a una variable del script y actuar sobre su valor, debemos hacerla global.
 * PHP Dispone un un importante conjunto de variables superglobales.
 * El desarrollador tiene acceso a dichas variables en cualquier momento del script.
 * El sistema se encarga de tenerlas actualizadas, con el valor correspondiente


 * Superglobales
 * PHP incluye unas Son variables internas predefinidas que pueden usarse desde cualquier ámbito, por lo que reciben el nombre de variables superglobales.
 * No es necesario que uses global para acceder a ellas.


 * Cada una de estas variables es un array que contiene un conjunto de valores
 * Posteriormente veremos cómo se utilizan los arrays).
 * Aquí puedes acceder a las variables superglobales disponibles en PHP se pueden ver son las siguientes:


 * Superglobales (Algunas principales)
 * 1) $GLOBALS Hace referencia a todas las variables disponibles en el ámbito global
 * 2) $_SERVER Información del entorno del servidor y de ejecución
 * 3) $_GET Variables HTTP GET
 * 4) $_POST Variables HTTP POST
 * 5) $_FILES Variables de Carga de Archivos HTTP
 * 6) $_COOKIE Cookies HTTP
 * 7) $_SESSION Variables de sesión
 * 8) $_REQUEST Variables HTTP REQUEST. Un array asociativo que por defecto contiene el contenido de $_GET, $_POST y $_COOKIE.
 * 9) $_ENV


 * Analizaremos una de ellas
 * $_SERVER.
 * Contiene información sobre el entorno del servidor web y de ejecución. Entre la información que nos ofrece esta variable, tenemos:
 * Principales valores de la variable $_SERVER


 * 1) $_SERVER['PHP_SELF']: script que se está ejecutando actualmente.
 * 2) $_SERVER['SERVER_ADDR']: dirección IP del servidor web.
 * 3) $_SERVER['SERVER_NAME']: nombre del servidor web.
 * 4) $_SERVER['DOCUMENT_ROOT']: directorio raíz bajo el que se ejecuta el guión actual.
 * 5) $_SERVER['REMOTE_ADDR']:dirección IP desde la que el usuario está viendo la página.
 * 6) $_SERVER['REQUEST_METHOD']:método utilizado para acceder a la página ('GET', 'HEAD', 'POST' o 'PUT')


 * }