Tecnología

Inicio

Errores comunes de PHP

Errores comunes de PHP


Hay varios errores comunes que los programadores de PHP introducen al escribir código PHP. Algunos de los errores que los mensajes de error del intérprete, pero los mensajes de error a menudo no están relacionados con el error real y puede apuntar a una línea completamente diferente en el guión. Otros insectos no causan ningún mensaje de error en absoluto, sino que el programa se comportan de manera diferente de lo previsto. Es útil revisar estos errores comunes, debido a que estos errores son hechos por los programadores principiantes y experimentados por igual.

El uso de un operador de asignación en una expresión condicional

El signo igual es un operador de asignación en PHP. Por ejemplo, la siguiente instrucción asigna el valor de cinco a la variable $ x:

$ X = 5;

Dos signos iguales juntos hacen un operador condicional. Por ejemplo, la siguiente instrucción asigna el valor de tres a la variable $ y, si la variable $ x es igual a cinco:

if ($ x == 5) $ y = 3;

Un error de PHP común es omitir uno de los signos de igualdad en la expresión condicional. Esto hace que el intérprete para realizar una tarea y luego una evaluación condicional en el resultado de la asignación, por lo que cualquier valor que no sea cero se evaluará como "verdadera". Por ejemplo, considere la siguiente declaración:

if ($ x = 5) $ y = 3;

La variable $ y siempre será igual a tres, ya que el valor de cinco se asigna a, en lugar de en comparación con, la variable $ x. Desde cinco es distinto de cero, el resultado siempre será evaluada como "verdadera".

La omisión de un Presupuesto colgando de una cadena

Otro error de PHP común se produce cuando no se cierra correctamente una cadena con una cita posterior. Es fácil de hacer esto, especialmente si usted está mezclando comillas simples y dobles en la misma cadena. A veces es difícil rastrear el origen de este error debido a que el mensaje de error puede ser muy diferente del verdadero problema, y ​​el intérprete menudo apunta a una línea que es varias líneas anteriores en los que el problema real es. Esto es porque el intérprete continúa para tratar y procesar el código a pesar de la falta cita. Considere la siguiente secuencia de comandos:

<? Php
$ Cadena1 = 'Y ella dijo: "Me pregunto por qué?";
$ Cadena2 = 'Y él respondió: "Creo que sé la respuesta!"';
if ($ plot_path1)
echo $ cadena1;
más
echo $ cadena2;

Este código generará un error "inesperado T_STRING" que apunta a la línea que contiene la instrucción "if", es decir, dos líneas de abajo, donde se produce el verdadero problema.

Olvidar el "$" al cambiar de idioma

los programas de PHP a menudo tienen tanto marcado código HTML y JavaScript intercalan con script PHP. Al cambiar entre PHP y JavaScript, es fácil olvidar que el lenguaje que está utilizando y para adoptar las normas del lenguaje de script mal. Un error común es omitir el signo de dólar en frente de una variable de PHP, ya que se requiere en PHP, pero no en JavaScript. Por ejemplo, el siguiente script omite el signo de dólar de la variable "i" en el bucle "for" después de que el fragmento de código JavaScript de código:

<? Php
$ Total = suma ($ partes);
?>
<Script type = "text / javascript">
.? Document.getElementById ( "totalfield") = valor <? Php echo $ totales; ?>;
</ Script>
for (i = 0; i <25; i ++) {
proceso (elemento [i]);
}
?>
Los puntos de intérprete a la línea con el error, pero emite el mensaje de error "inesperado '=', esperando ''; "

Incluyendo un punto y coma después de un "Si" Línea

Como la mayoría de las líneas de final de PHP en un punto y coma, un error común es PHP para incluir un punto y coma después de una línea con un "if". Esto puede ser un error difíciles de localizar, ya que no provoca un mensaje de error. Por ejemplo, la siguiente secuencia de comandos siempre se hará eco "baja en el inventario!" debido a la coma al final de la línea con el "if". El punto y coma elimina de manera efectiva la expresión condicional debido a que termina la instrucción "if" sin evaluar una expresión.

<? Php
if ($ contador <5);
{
echo "baja en el inventario!";
}