2009-12-06 15 views

Antwort

31

Verwenden unset($var);

+0

Löscht der Verweis * und * Müll den Speicher auch? –

+4

@ Jeremy - ja, es tut – mauris

1

Außerdem können Sie die Variable null gesetzt:

<?php 

$v= 'string'; 
var_dump(isset($v)); 
$v= null; 
var_dump(isset($v)); 

?> 
+0

Für eine einfache '$ Variable ', ist es besser für meine Zwecke, es auf' null 'zu setzen. – Pathros

19

Wie nacmartin sagte unset wird "undefine" eine Variable. Sie könnten auch die Variable auf null, aber das ist, wie die beiden Ansätze unterscheiden:

$x = 3; $y = 4; 
isset($x); // true; 
isset($y); // true; 

$x = null; 
unset($y); 
isset($x); // false 
isset($y); // false 

echo $x; // null 
echo $y; // PHP Notice (y not defined) 
13

Weitere Erläuterungen:

Während eine Variable null oder nicht null sein kann, kann eine Variable auch sein gesagt werden, eingestellt oder nicht eingestellt.

eine Variable auf null gesetzt, Sie einfach

$var = null; 

Dies wird $varnull, das entspricht false, 0 und so weiter machen. Sie können die Variable immer noch von $GLOBALS['var'] abrufen, da sie noch definiert ist. Um jedoch eine Variable aus der globalen und/oder lokalen Namensraum zu entfernen, verwenden Sie die

unset($var); 

Dadurch wird $var nicht gesetzt. Sie werden nicht in $GLOBALS finden.

Verwandte Themen