¿Cuál es mejor (unset() o $var = null) para liberar memoria en PHP?

En este artículo, discutiremos cómo liberar la memoria con unset() y usar el valor NULL para cualquier variable.

unset(): La función unset() es una función incorporada en PHP que se usa para desarmar una variable específica. La función unset() simplemente destruye o elimina la variable de la tabla de símbolos. Después de aplicar unset() a una variable, se marca para la recolección de elementos no utilizados de PHP.

Sintaxis:

unset($variable)
  • $variable que no está configurada

Ejemplo: El siguiente ejemplo demuestra la función unset() . En el siguiente ejemplo, la memoria $a se elimina de la pila de variables, $a ya no existe después de la acción de desarmado.

PHP

<?php
  
    // Declare a variable and set
    // to some string
    $a = "hello geeks";
    echo "Before unset : $a";
          
    // Unset this variable
    unset($a);
    echo "<br>";
  
    // Display the variable
    echo "After unset : $a";
?>

 

Producción:

Before unset : hello geeks
After unset :

null: null se usa para vaciar la variable. Podemos crear una variable nula simplemente asignándola a nula. La memoria no se libera, pero los datos NULL se vuelven a escribir o reasignar en esa variable en particular.

Sintaxis:

$variable = null;

Ejemplo:

PHP

<?php
  
    // Declare a variable and
    // set to string
    $a = "Hello geeks";
    echo "Before null : $a";
          
    // Assign null to this variable
    $a = null;
    echo "<br>";
  
    // Display result
    echo "After null : $a";
?>

Producción:

Before null : Hello geeks
After null :

¿Cuál es mejor?

función unset():

  • unset() no fuerza la liberación inmediata de memoria y se usa para liberar el uso de variables.
  • El recolector de basura de PHP limpia las variables no establecidas.
  • Los ciclos de CPU no se desperdician
  • Se necesita tiempo para liberar la memoria

variable nula:

  • La variable nula libera inmediatamente la memoria.
  • Los ciclos de CPU se desperdician y lleva más tiempo de ejecución.
  • Rápidamente libera la memoria.

Conclusión: NULL es mejor si la memoria necesaria es menor para una variable.

Publicación traducida automáticamente

Artículo escrito por gottumukkalabobby y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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