(PHP 4, PHP 5, PHP 7)
unset — Belirtilen değişkeni tanımsız yapar
unset() işlevi belirtilen değişkenleri hiç tanımlanmamış duruma getirir.
İşlevin başka bir işlev içindeki davranışı tanımsız yapılmaya çalışılan değişkenin türüne bağlıdır.
Aşağıdaki örnekte işlevin içinde yokedilmeye çalışılan değişken işlev içinde küreselleştirilmiş bir değişken olup değişkenin sadece yerel tanımı yok edilir. Değişkenin çağrı ortamındaki değeri unset() çağrılmadan önceki değerini korur.
<?php
function foo_yu_gebert()
{
global $foo;
unset($foo);
}
$foo = 'bar';
foo_yu_gebert();
echo $foo;
?>
Yukarıdaki örneğin çıktısı:
bar
Bir küresel değişkeni bir işlev içinde yoketmeniz gerekliyse $GLOBALS dizisini kullanabilirsiniz:
<?php
function foo()
{
unset($GLOBALS['bar']);
}
$bar = "something";
foo();
?>
Gönderimli aktarılan bir değişkeni bir işlev içinde yoketmeye çalışırsanız sadece yerel değişkeni yoketmiş olursunuz. Değişkenin, işlevin çağrıldıgı ortamdaki değeri unset() çağrılmadan önceki değerini korur.
<?php
function foo(&$bar)
{
unset($bar);
$bar = "başka bir şey";
}
$bar = 'bir şey';
echo "$bar\n";
foo($bar);
echo "$bar\n";
?>
Yukarıdaki örneğin çıktısı:
bir şey bir şey
Bir duruk değişkeni bir işlev içinde yoketmeye çalışırsanız değişkeni sadece işlevin kalan bağlamı için yoketmiş olursunuz. Aşağıdaki çağrılar değişkenin önceki değerinin geçerli kaldığını gösterecektir.
<?php
function foo()
{
static $bar;
$bar++;
echo "unset öncesi: $bar, ";
unset($bar);
$bar = 23;
echo "unset sonrası: $bar\n";
}
foo();
foo();
foo();
?>
Yukarıdaki örneğin çıktısı:
unset öncesi: 1, unset sonrası: 23 unset öncesi: 2, unset sonrası: 23 unset öncesi: 3, unset sonrası: 23
değişken
Yokedilecek değişken.
değişken
Başka bir değişken.
...
Başka değişkenler.
Hiçbir değer dönmez.
Sürüm: | Açıklama |
---|---|
4.0.1 | Çok sayıda değiştirge belirtebilme desteği eklendi. |
Örnek 1 - unset() örneği
<?php
// tek bir değişkeni yokedelim
unset($foo);
// Bir dizinin tek bir elemanını yokedelim
unset($bar['quux']);
// birden fazla değiykeni yokedelim
unset($foo1, $foo2, $foo3);
?>
Örnek 2 - (unset) - NULL
'a dönüşüm örneği (PHP 5 ve sonrası)
<?php
$name = 'Felipe';
var_dump((unset) $name);
?>
Bilginize: Bu bir işlev değil, dil oluşumu olduğundan değişken işlevler kullanılarak çağrılamaz.
Bilginize:
Nesne özelliklerini geçerli bağlamda görünür olsalar bile yoketmek mümkündür.
Bilginize:
PHP 5'ten beri bir nesne yöntemi içinde $this yokedilememektedir.
Bilginize:
empty() erişilir olmayan nesne özellikleri kullanıyorsa, bildirimli olduğu taktirde __isset yöntemi çağrılabilir.