पीएचपी में पैरामीटर के साथ रिकर्सन

आइए, रिकर्सन की मदद से क्रमिक रूप से एरे के तत्वों को प्रिंट करें। मान लें कि एरे शुरू में फ़ंक्शन के पैरामीटर के रूप में पास किया जाता है:

php<?php
  func([1, 2, 3]);
?>

आइए अभी रिकर्सन के बिना array_shift फ़ंक्शन का उपयोग करके एरे के सभी तत्वों को एक-एक करके प्रिंट करें:

php<?php
  function func($arr) {
    var_dump(array_shift($arr)); // 1 प्रिंट करेगा
    var_dump($arr); // [2, 3] प्रिंट करेगा - एरे छोटा हो गया है
    
    var_dump(array_shift($arr)); // 2 प्रिंट करेगा
    var_dump($arr); // [3] प्रिंट करेगा - एरे छोटा हो गया है
    
    var_dump(array_shift($arr)); // 3 प्रिंट करेगा
    var_dump($arr); // [] प्रिंट करेगा - एरे खाली है
  }
  
  func([1, 2, 3]);
?>

जैसा कि आप देख रहे हैं, array_shift फ़ंक्शन एरे का पहला तत्व काटकर वापस कर देता है, और साथ ही एरे स्वयं उस तत्व से छोटा हो जाता है।

आइए अब रिकर्सन का उपयोग करें:

php<?php
  function func($arr) {
    var_dump(array_shift($arr));
    var_dump($arr);
    
    if (count($arr) !== 0) {
      func($arr);
    }
  }
  
  func([1, 2, 3]);
?>

वास्तव में, निश्चित रूप से, एरे के तत्वों को लूप से पार करना सबसे आसान है। दिए गए उदाहरण बस सरल (गैर-व्यावहारिक) उदाहरणों पर रिकर्सन के काम को प्रदर्शित कर रहे हैं। रिकर्सन के अधिक उपयोगी अनुप्रयोग उदाहरण बस अधिक जटिल हैं, हम उन पर थोड़ा नीचे चर्चा करेंगे।

Задание 1

एक एरे दिया गया है:

php<?php
  $arr = ['a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5];
?>

रिकर्सन की मदद से इस एरे के तत्वों को स्क्रीन पर प्रिंट करें।