compact() ve extract() fonksiyonlarını bir inceleseniz iyi olacak

Bir fonksiyon birden fazla değeri return edebilir. Örnek:
<?
function deneme () {
$adi = "Ahmet";
$soyadi = "Ozturk";
return compact('adi', 'soyadi');
}
$veri = deneme();
extract($veri); // compact içinde $ kullanmadan verdiğin değişken isimlerini çıkarır
echo 'Adı : ' . $adi;
echo '<br />';
echo 'Soyadi : ' . $soyadi;
// çıktı:
// Adı : Ahmet
// Soyadı : Ozturk
?>
Bişey farketmedi ki verileri bi paket gibi bişey yapmış oldun.serialize ya da arraya atmandan pek farklı bişey olmadı.