isset unset- empty (Sorun) :S
16
●1.514
- 26-08-2009, 23:50:24Tamam Hocam Anladım. Yani isset o değişkeni tanıtır empty ise yok olan bir değişkenin olmadığını belli eder eğer değişken var ise ve tanıltılmış ise ondan sonra empty kodu bir işe yaramaz[/CODE]
isset tanıtmıyor tanıtılmışmı ona bakıyor post ve get işlemlerine geçince anlarsın mesela bir php scripti yazdın veri gönderildimi gönderilmedimi isset le anlıyorsun
set edilmiş bir değişkeni hafızadan kaldırmak için unset yapman gerekmektedir sen integer deişkene $deisken="" yapsanda o deisken phpde hafızada kalmaya devam edecektir kullanmayacaksan unset($deisken); yapman en mantıklı hareket olacaktır
empty isset'in tersi işleve sahip değer atanmamışsa 0 sa veya null'sa true değer dönüyor - 27-08-2009, 00:08:44isset bir değişkenin var olup olmadığını kontrol eder, isset kelime manası olarak 'ayarlanmış' manasına yakındır, yani siz
if(isset($degisken))
diye bir kod yazdığınızda şunu demek istiyorsunuzdur; eğer $degisken degişkeni tanımlanmışsa şunu yap. Örnek vermek gerekirse;
if(isset($degisken)){ echo 'Böyle bir değişken var'; }else{ echo 'Böyle bir değişken yok'; }Yukarıda ki kod da degisken tanımlanmamıştır, dolayısı ile else devreye girip ekrana 'Böyle bir değişken yok' yazısı çıkacaktır, ama if den önce $degisken adında boş bir değişken tanımlasaydık bu seferde ekrana 'Böyle bir değişken var' yazılacaktı. Örnek verelim;
$degisken = ''; if(isset($degisken)){ echo 'Böyle bir değişken var'; }else{ echo 'Böyle bir değişken yok'; }Gördüğünüz gibi boş bir değişken ama ekrana 'Böyle bir değişken var' yazacak, çünkü $degisken değişkeni tanımlanmış en başta, boş olup olmaması önemli değil.
unset ise daha önce set edilmiş, yani ayarlanmış bir değişkeni hafızadan siler, yani yok eder, kısaca bir örnek vermek gerekirse;
$degisken = 'Falan filan'; unset($degisken); if(isset($degisken)){ echo 'Böyle bir değişken var'; }else{ echo 'Böyle bir değişken yok'; }Gördüğünüz gibi değişkeni oluşturup ardından hemen öldürdük, yani unset ettik, bu durumda aşağıda isset ile sorguladığımızda değişkeni öldürdüğümüz için ekrana 'Böyle bir değişken yok' yazılacaktır, bir örnek daha verip daha iyi anlayalım;
$a = 8; if(isset($a)){ echo '$a değişkeninin ilk değeri '.$a.' dır.<br />'; } unset($a); // Değişkeni siliyoruz $a = 5; // Tekrar oluşturuyoruz if(isset($a)){ echo '$a değişkeninin değeri şimdide '.$a.' dır.'; }
empty ise adı üstünde değişkenin boş olup olmadığını kontrol eder. Bir örnek vermek gerekirse;
$degisken = ''; if(empty($degisken)){ echo 'Bu degişken boş'; }else{ echo 'Bu degişken dolu'; }Yukarıda $degisken değişkeninin değeri boştur, dolayısı ile ekrana 'Bu degişken boş' yazılacaktır. Eğer değişkene herhangi bir değer vermiş olsaydık bu seferde tam tersi yazacaktı.
Umarım faydalı olmuştur. - 27-08-2009, 00:14:04Üyeliği durduruldu
- 27-08-2009, 00:22:33isset için konuşacak olursak;
$dvd = "";
yapinca sen $dvd degişkenin set ettin.
degeri boş dahi olsa $dvd değişkeni ayarlanmiş oldu.
unset($dvd);
olarak kullanirsan $dvd değişkeni silinmiş olur. ve istedigin sonuca varabilirsin.
empty için konuşursak.
$dvd = "";
yaptiginda sonuc true yani boş olarak dönecektir. $dvd set edilmiş ama içeriği boştur. bir sorun yaratmaz. ama değişkenlerinizi silerken$dvd = "";
degildeunset($dvd);
şeklinde silmeniz yarariniza olacaktir.
iyi geceler
NOT : Enigmatic arkadasimizda detayli olarak aciklamiş. ben cevap ver e tikladiktan sonra yolladi sanirim postunu. görmemişim