
isset fonksiyonu, parametre olarak verilen değişkenin tanımlı olup olmadığını kontrol eder.
Örnek:
<?php $degisken = "Celal"; if(isset($degisken)) { echo "değişken tanımlanmış"; } else { echo "tanımlı değişken bulunamadı."; } ?>
Ekrandaki çıktı: değişken tanımlanmış
isset fonksiyonu $degisken değerinin içi boş bile olsa tanımlı bir değişken olduğu için TRUE değerini döndürür. Değişken hiç tanımlanmamış olsaydı FALSE değerini döndürecekti.
empty fonksiyonu isset fonksiyonunun tam tersini yapar. Bir değişkene değer atanmamışsa, veya değeri sıfır yada boş alfanümerik (null string) ise, doğru TRUE değerini döndürür.
Örnek:
<?php $degisken = ""; if(empty($degisken)) { echo "değişken değeri boş veya geçersiz değer"; } ?>
Ekrandaki çıktı: değişken değeri boş veya geçersiz değer
unset fonksiyonu parametre olarak verilen değişkeni hafızadan silmek için kullanılır.
Örnek:
<?php $degisken = "Celal"; unset($degisken); ?>
unset fonksiyonuna verdiğim $degisken ve içindeki Celal değeri silinmiş oldu.
Her aramada karşıma çıkmasıyla siteyi yer imlerine ekledim :)
Yararlı paylaşım olmuş, teşekkürler.
Mantığını anlamamı sağladığın için teşekkürler :)
Projelerimde sık sık kullanırdım empty fonksiyonlarını fakat geçen gün sorun yaşadım.
Empty değişen dolu olduğu halde değer(0) true sonuç döndürdü.
Halbuki değişkene 0 atanmıştı.
isset fonksiyonu $degisken değerinin içi boş bile olsa tanımlı bir değişken olduğu için TRUE değerini döndürür. Değişken hiç tanımlanmamış olsaydı FALSE değerini döndürecekti.
bu yazınızda hata var $degişken değeri boş olursa false döner
@ömer
Yukarıdaki kodları test edebilirsiniz. Herhangi bir hata yok.
isset fonksiyonu değişkenin tanımlı olup olmadığını kontrol eder.
Eğer değişken tanımlanmışsa içi boş da olsa dolu da olsa TRUE değerini döndürür.
Detaylı bilgi için şu sayfayı inceleyebilirsiniz: http://tr2.php.net/isset
Kısacası biz Formdaki inputtan gelen verileri içi boş mu dolumu diye baktırmak için issetmi kullanmamız gerekli yoksa emptymi daha uygun olur ?
Php’de kendimi geliştirmeye çalışıyorum. Siteniz çok faydalı ancal isset fonksiyonu genellikle nerelerde kullanılır. Biraz açıklayabilir misiniz?
gayet faydalı bir konu olmuş benim bir sorum daha olacak peki değişkenin için boş ise ekrana hiç birşey göstermeme durumunu nasıl yaparız?
Guzel olmus kardesim.Allah razi olsun
hocam bu kodda bole bi hata aldım
<?php if(isset($_POST["gonder"])){
$resimyolu = $_POST['resimyolu'];
$emID = $_POST['emID'];
if($resimyolu==""||$emID==""){ echo 'Lütfen tüm alanları doldurun!‘; }else{
$kayit = mysql_query(“insert into urunresim(emID,resimyolu) values(‘$emID’,’$resimyolu’)”);
echo “Resim Eklendi!“; } } ?>
<?php if(isset($_POST['yukle'])){
$kaynak = $_FILES["dosya"]["tmp_name"];
$dosyaadi = $_FILES["dosya"]["name"];
$dosyatipi = $_FILES["dosya"]["type"];
$dboyut = $_FILES["dosya"]["size"];
$hedef = "../upload/resimler";
$uzanti = substr($dosyaadi, -4);
$yeniad = substr(md5(uniqid(rand())), 0,10);
$yeniresimadi = $yeniad.$uzanti;
if(empty($_FILES['dosya']['name'])){ echo 'Resim yükleyebilmek için herhangi bir resim dosyasını seçmeniz gerekir!‘; }
else{
if($_FILES[‘dosya’][‘size’]>1024*1024){ echo ‘Resim yükleyemessin boyutu Küçük (500*500) Olmalı!‘; }
else{
if($dosyatipi!=”image/jpg”&&$dosyatipi!=”image/jpeg”&&$dosyatipi!=”image/png”&&$dosyatipi!=”image/gif”){ echo ‘Geçersiz Uzantı! İzin verilen uzantılar : .gif, .jpg, .png‘; }else{
$yukle = move_uploaded_file($kaynak,$hedef.’/’.$yeniresimadi);
echo “Resiminiz yüklenmiştir!“;
echo “”;
echo “Link $hedef/$yeniresimadi”;
echo ““;
} } } }?>
Resim
<input name="resimyolu" type="text" class="input-text" value="” size=”40″/>
Resmin ekleneceği ürün (eklenmiş son 10 adet ürünü gösterir.)
<option value="”>
hata
Notice: Undefined variable: hedef in C:\wamp\www\Emlak\yonetim\resimekle.php on line 165 Call Stack #TimeMemoryFunctionLocation 10.0007265224{main}( )..\resimekle.php:0
böle bir hata aldım
bunun valuesını yazınca hata verıyor hocam nasılyapıcamı bılmıyorum bı yardım edın
<input name="resimyolu" type="text" class="input-text" value="” size=”40″/>
Sürekli bilgi edindiğim bir site. Çok teşekkür ederim. Emeğinize sağlık.