Saltar al contenido

Error constante indefinido en php 7.2

Después de consultar con expertos en esta materia, programadores de diversas áreas y profesores dimos con la solución al dilema y la plasmamos en este post.

Solución:

Esta es una advertencia común que ocurre cada vez que PHP detecta el uso de una constante indefinida.

Aquí hay un ejemplo de constante definida en PHP:

define('PI', 3.14);

A continuación se muestra una lista de algunos casos que pueden causar el problema:

  • Olvidarse de usar un símbolo $ al comienzo de un nombre de variable.

    $name = "Aniket";
    echo name; // forgot to add $ before name
    

    El código anterior arrojará: Aviso: uso de un nombre de constante indefinido: ‘nombre’ asumido. Debido a que no hay un signo de dólar delante de la variable “nombre”, PHP asume que estaba tratando de hacer referencia a una variable constante llamada “nombre”.

  • Olvidarse de colocar comillas alrededor de las cadenas.

    echo $_POST[email];
    

    En el ejemplo anterior, no pude colocar comillas alrededor del $_POST variable “email”. Este código arrojará: Aviso: uso de un nombre de constante indefinido: ‘correo electrónico’ asumido.

    Para arreglar esto, obviamente tendría que hacer lo siguiente:

    echo $_POST["email"];
    

De acuerdo con las funciones obsoletas en PHP 7.2.x, no debe usar constantes indefinidas porque:

Las cadenas sin comillas que son constantes globales inexistentes se toman como cadenas en sí mismas.

Este comportamiento solía emitir un E_AVISO, pero ahora emitirá un E_ADVERTENCIA. En la próxima versión principal de PHP, se lanzará una excepción de error.

Puedes prevenir esto E_WARNING solo si declara el valor constante antes de usarlo.

En la pregunta anterior, MODULE_HEADER_SELECT_TEMPLATE_STATUS no está definido.

Además, para aquellos que son nuevos en el desarrollo de complementos de wordpress y parece que no pueden entender qué significa definir “Constante” antes de que se use …

Aquí hay un ejemplo de lo que arrojará un error:

add_action('wp_enqueue_scripts', myprefix_load_styles);

Declarar una función directamente como esa en un enlace es una forma de generar un error como este. En lugar de:

add_action('wp_enqueue_scripts', 'myprefix_load_styles');

Tenga en cuenta que el nombre de la función ahora está entre comillas. Y eso debería funcionar, si ese es tu escenario.

Nos encantaría que puedieras dar visibilidad a este enunciado si te fue útil.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *