PHP extract() FONKSİYONU
Bu fonksiyon geçerli simge tabloya bir diziden değişkenleri almak için kullanılır. Bu fonksiyon bir ilişkisel diziden dizi alır ve Dizinin anahtarları değişken değerler olarak değişken isimleri ve değerleri gibi davranır. Her anahtar ve değer çifti için extract fonksiyonu ve ön-ek parametrelerini tabi olan simge tablosuna bir değişken yaratacaktır.
Her anahtarın geçerli bir değişken adı olup olmadığına bakmaktan başka bu değişkenlerin simge tablosundakilerle çakışıp çakışmadığına da bakar.
Sözdizimi:
extract( dizi ,çıkarım_türü ,prefix )
Dizi : Gerekli. Kullanmak için diziyi belirtir.
çıkarım_türü : Geçersiz veya sayısal anahtarların ve çakışmaların ele alınma yöntemini belirtmek için kullanılır. Aşağıdaki değerlerden biri olmalıdır:
- EXTR_OVERWRITE : Bir çakışma varsa mevcut değişkenin üzerine yazılır.
- EXTR_SKIP : Bir çakışma varsa mevcut değişkenin üzerine yazılmaz.
- EXTR_PREFIX_SAME : Bir çakışma varsa değişken isminin başına ön-ek konur.
- EXTR_PREFIX_INVALID : Sadece geçersiz veya sayısal indisli değişkerlerin başına ön-ek konur.
- EXTR_IF_EXISTS : Sadece simge tablosunda mevcut değişkenlerin üzerine yazılır, bunun dışında bir şey yapılmaz. Geçerli değişkenleri bir liste halinde tanımladıktan sonra bunlardan sadece örneğin $_REQUEST dışında tanımlanmış olanlarını çıkarmak için yararlıdır.
- EXTR_PREFIX_IF_EXISTS : Sadece simge tablosunda ön-eksiz sürümü bulunan değişkenlerin ön-ekli sürümleri oluşturulur.
- EXTR_REFS : Değişkenler gönderimli olarak çıkarılır. Dahil edilen değişkenler dizi değerlerine gönderimli iseler bu anlamlıdır. Bu seçeneği tek başına ya da bitsel OR operatörünü kullanmak suretiyle başka bir seçenekle birlikte kullanabilirsiniz.
Çıkarım_türü belirtilmezse prefix belirtilmiş sayılır.
prefix : Bu değiştirge sadece çıkarım_türü olarak EXTR_PREFIX_SAME, EXTR_PREFIX_ALL, EXTR_PREFIX_INVALID veya EXTR_PREFIX_IF_EXISTS belirtilmişse anlamlıdır. Ön-ekli bir sonuç geçerli bir değişken ismi oluşturmuyorsa simge tablosuna dahil edilmez. Ön-ekler dizi anahtarlarından özdevinimli olarak bir altçizgi karakteri ile ayrılırlar.
Dönen Değerler : Simge tablosuna başarıyla eklenen değişkenlerin sayısı.
Örnek:
<?php
$meyveler = array(
"meyve1" => "Muz",
"meyve2" => "Kiraz",
"meyve3" => "Elma",
);
extract($meyveler);
echo $meyve1;
echo "<br/>";
echo $meyve3;
?>
ÇIKTI:
Muz
Elma
Yukarıda ki örnekte görüldüğü gibi dizinin anahtarlarını değişkene dönüştürerek ekrana yazdırdık. Normalde yazdırmak için echo $meyveler["meyve1"]; bu kod ifadesini kullanırız, Parantezlerle uğraşarak kod yazmadan direk anahtarı değişkene çevirerek ekrana yazdırdık.
extract fonksiyonu ile atadığımız değişkenlere bir ön-ek getirelim ki daha önceden aynı isimde bir değişken de atadıysak bize sorun çıkarmasın:
Örnek:/p>
<?php
$size = "büyük";
$var_array = array("color" => "mavi",
"size" => "orta",
"shape" => "küre");
extract($var_array, EXTR_PREFIX_SAME, "boyut");
echo "$color, $size, $shape, $boyut_size";
?>
ÇIKTI:
mavi, büyük, küre, orta
Veritabanımızda gelen dizi verilerini değişken yapalım.
Örnek:/p>
<?php
$oku = mysql_query("SELECT * FROM tablo");
// tablo'muzdan bütün sütunları çekiyoruz
while($row = mysql_fetch_array($oku)) {
// Ne kadar $row = mysql_fetch_array($oku) varsa
extract($row); //Her $row isimli arraydeki degerleri değişken yapıyoruz.
echo $uye_adi."<br>"; //uye_adi adlı sütundaki bütün değerleri döndürüyoruz.
}
?>
- HTML
- CSS
- PHP
- JQUERY
- PHOTOSHOP
- JavaScript
- Web Dünyası
- Linux
- MİTHRİL FRAMEWORK
- Laravel
- Git
- React
- HTML LİNK(Bağlantı)EKLEME - LİNK VERME
- HTML YAZI VE RESİM ORTALAMA
- HTML RESME LİNK VERME
- HTML FORM OLUŞTURMA
- CSS YATAY MENÜ YAPIMI
- HTML RESİM EKLEME
- CSS (BOYUT) GENİŞLİK VE YÜKSEKLİK (Width-Height)
- HTML DİV ve SPAN NEDİR?
- HTML ARKAPLANA MÜZİK EKLEME
- KALİTE KAYBETMEDEN RESİMLERİ BÜYÜTME