Php fonksiyondan birden fazla değer return etme
Bazı zamanlarda bir fonksiyonda birden fazla değer döndürmemiz gerektiği olabiliyor.
Bu yazıda size bir fonksiyonda birden fazla değeri nasıl return edebileceğinizin 2 farklı yolunu göstereceğim.
Yazıyı okumadan önce list() fonksiyonuna göz atabilirsiniz.
1. Yol
<?
function metinDondur()
{
$deger = "burda bir deneme yazi";
$deger2 = "burda deneme ikinci yazi";
$deger3 = "burda deneme ucuncu yazi";
return($deger.','.$deger2.','.$deger3);
}
$gelenDegerler = metinDondur();
$degerler=explode(",", $gelenDegerler );
foreach ($degerler as $yeni_degerler)
{
echo $yeni_degerler . "<br />";
}
?>
Burada $deger, $deger2 ve $deger3 değişkenlerine değerleri atadık daha sonra return() fonksiyonunu kullanarak bu değerleri ayrılmamış bir halde $gelenDegerler değişkenine atıyoruz. explode() fonksiyonu ile return fonksiyonunda kullandığımız “,”(virgül)lerden parçalıyoruz. Daha sonra fonksiyonumuz explode() kullanarak parçalıdığımız için bir dizi haline geliyor ve bunu $degerler değişkenine atıyoruz. Daha sorna foreach kullanarak bunları ekrana yazdırabiliyoruz. Siz ne istiyorsanız onu yapabilirsiniz.
2. Yol
<? function Veriler() { $deger1= "birinci degisken degeri"; $deger2 = "ikinci degisken degeri"; $deger3= "ucuncu degisken degeri"; return array($deger1, $deger2, $deger3); } list ($deger1, $deger2, $deger3)= Veriler(); echo $deger1 . '<br />' . $deger2 . '<br />' . $deger3; ?>
Burada yaptığımız işlem diğerine göre daha kısa ve sade. yine $deger, $deger2 ve $deger3 değişkenlerine değerleri atadık ve bu sefer değerimizi array() (yani dizi)
şeklinde return ediyoruz. Daha list() fonksiyonunu kullanarak sırasıyla $deger1, $deger2 ve $deger3 değişkenlerine veriler() fonksiyonundan dönen değeri dizideki değerleri atıyoruz. Daha sonra doğruluğunu denemek için bizim gibi echo ile ekrana bastırabilirsiniz.