“Conocimientos Programación>Programación PHP /MySQL

PHP Error : Undefined offset

2012/12/26
En PHP, una tiendas de matriz indexada pares clave-valor de los datos mediante números enteros distintos de cero como claves. El primer elemento de la matriz tiene una clave de elementos cero y posterior están numerados consecutivamente . Una matriz que utiliza cadenas como claves se llama una matriz asociativa. Cuando se intenta acceder a un elemento de matriz con una clave de entero que se encuentra fuera de los límites de las claves válidas de una matriz , recibirá un error " Undefined offset " . El error equivalente a una matriz asociativa es un error " Undefined index " . Iniciando con la función de matriz

Una forma de crear una matriz en PHP es utilizar la función de " matriz" . Pasar una lista ordenada de elementos y PHP creará una matriz indexada de los elementos de partida con cero . Por ejemplo :

< php $ DayOfWeek = ? $ DayOfWeek [ 2 ] ; //imprime " mar " echo $ DayOfWeek [ 5 ] //imprime " vie "
Undefined offset

"indefinido " error de desplazamiento en PHP se produce cuando se intenta hacer referencia a un elemento de matriz con un valor de índice de matriz que no existe . Si usted es nuevo en la programación , es posible que se olvide de que las claves de elemento de conjunto indexado comienzan con cero, no una, y terminan con el número de elementos de la matriz menos uno. Por ejemplo , el siguiente código producirá un error " Undefined offset " en PHP porque la matriz " DayOfWeek " tiene siete elementos en índices cero al seis , no uno a siete :

echo $ DayOfWeek [ 7 ] ;
inicialización mediante una función

También puede inicializar una matriz estableciéndolo igual al valor de retorno de una función que devuelve un array, o por el paso de una matriz por referencia a una función que modificará la matriz. Por ejemplo :

$ array = initialize_array ( ) //una función que devuelve una matriz

Si no estás seguro de lo que es el último elemento de la matriz devuelta por la función y se intenta para acceder a un elemento de matriz después de la última clave de entero definida , recibirá un error " Undefined offset " .
evitar con conde

una forma de evitar una " ; Undefined offset "error es el control de las claves enteras que utiliza para utilizar para hacer referencia a los valores de la matriz con un bucle , como un" bucle de " . Utilice la función "count" para identificar el número de elementos de una matriz y crear un bucle "for " de elemento cero hasta el último elemento . Por ejemplo , el código siguiente se calcula el número de elementos de una matriz para crear un bucle que no excederá de los límites de matriz:

$ númdías = count ($ DayOfWeek ) ; //devuelve 7Porque ( $ i = 0 ; $ i <$ númdías ; $ i + +) echo "

  • " . $ DayOfWeek [$ i]. "< /li >"; //elementos numerados de cero a seis
    Evitar Con el " isset " Función

    Otra manera de evitar una " Undefined offset "error es utilizar la" función isset " . Esta función devuelve "true " o "false" dependiendo de si tiene un valor de matriz con la clave especificada . No va a desencadenar un error " Undefined offset " si el resultado es falso . Antes de intentar hacer referencia a un elemento de matriz , llamar a la función " isset " para ver si existe. Por ejemplo, el siguiente código aumenta un contador hasta que se alcanza una clave de matriz fuera de los límites de la matriz :

    $ day = -1 , mientras que ( isset ($ DayOfWeek [ + + $ día ])) echo " < ; li > ". $ DayOfWeek [$ día ] . "< /li >";

  • Programación PHP /MySQL
    Cómo eliminar una base de datos MySQL
    Cómo agregar y restar números enteros en diferentes columnas en MySQL
    Como Código PHP y MySQL elegir el Estado
    Cómo habilitar PHP 5 en GoDaddy
    Depurar una función Pipelined en Oracle
    Cómo anular la configuración variables de sesión en PHP
    Cómo reemplazar una barra invertida
    Cómo obtener nombres de propiedades de objetos en una matriz en PHP
    Conocimientos Informáticos © http://www.ordenador.online