Function switch recursion with possibility of an endless loop
===

I did not find this type of scenario in stackoverflow and google searches.

I have run into a problem with the logic in the code I have written for a D&D background generator. Here's the problem:
    
    class char
    {
        private function d4() { $RNG = mt_rand(1,4); return $RNG; }
        // etc.
        private function cultureRoll($dice) {
            switch($dice) {
                case 1: // For this culture, we have d3 different types of rewards
                    for ($i = 1; $i <= $this->d3(); $i++) {
                        $this->character['culture']['reward'][$i] = "REWARD: ". $this->rollRewards($this->d20());
                    }
                break;
            }
        }
        private function rollRewards($dice) {
            switch($dice) {
                case 1: // A Weapon
                    switch($this->d10()) {
                        case 1: $gift = "Gemmed dagger."; break;
                        case 2: $gift = "Gemmed sword."; break;
                        case 3: $gift = "Plain sword."; break;
                        case 4: $gift = "A mace."; break;
                        case 5: $gift = "Gemmed spear."; break;
                        case 6: $gift = "Well-made short or long bow."; break;
                        case 7: $gift = "Gemmed battle-axe."; break;
                        case 8: $gift = "Any type of crossbow."; break;
                        case 9: $gift = "Exotic weapon. GM Only"; break;
                        case 10: // re-roll d4 more times on this subtable.
                    }
                break;
                case 2: $gift = "A tapestry."; break;
            }
            return $gift;
        }
    }

How do I write this so when say, that 1st reward in the FOR loop @ the cultureRoll function generates d4 more items in that list from rollRewards. How would I call this and re-iterate through that loop to include the d4 more items? (and yes, if it rolls a 1 and then another 10, d4 MORE items!!

like a slot machine