Fonksiyonun içinde yine aynı fonksiyonu kullanma php
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;
}
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