v2.5.2
Giriş yap

Fonksiyonun içinde yine aynı fonksiyonu kullanma php

singlestroke
323 defa görüntülendi

Aşağıda ki şekilde fonksiyonun içinde yine aynı
fonksiyonu kullanmak istiyorum (php) nasıl yapabilirim ?

Böylece alt bir kategori id girerek o kategorinin altında ki tüm kategorilerin id bilgisini toplayabilirim sizce sorun ne ?

    function x(){
        x();
    }
    
    
    Yapmak İstediğim işlem ;
    
    function subCategoriesList($topCategory)
    {
        $allSubCategories = array();

        $subCategories = $this->databaseConn->query("SELECT * FROM category WHERE topCategory = {$topCategory}", PDO::FETCH_ASSOC);
        if ($subCategories->rowCount()) {

            foreach ($subCategories as $category) {

                array_push($allSubCategories, $category['id']);
                subCategoriesList($category['id']);
            }
        }
        return $allSubCategories;
    }
    
devepdogukan
637 gün önce

Burda yapmak istediğin şey Özyineleme (recursion) fonksiyondur. Bu fonksiyonlar ilk baktığında çok kullanışlı gibi gelsede doğru bir logic ile yazılmasa pc'ye son nefesi verdirir. Fonksiyonun yapacağı işi bittiğinde sürekli kendisini çağırmasını engellemesin yoksa dediğim gibi sonsuz döngüye girer ve bir süre sonra ram patlar