Dans l'article précédent, nous vous avons présenté l'utilisation de la fonction récursive php et comment l'implémenter. Alors qu'en est-il du problème de retour lorsque nous utilisons la fonction récursive php ? Aujourd'hui je vais vous expliquer le problème des valeurs de retour dans les fonctions récursives PHP !
Le problème du retour des valeurs dans les fonctions récursives
/* 循环去除字符串左边的0 */ function removeLeftZero($str){ if($str['0'] == '0'){ $str = substr($str, '1'); removeLeftZero($str); }else{ return $str; } }
Aux yeux de la plupart des gens, il n'y a aucun problème avec ce code si vous ne l'exécutez pas. ça, vous ne saurez pas quel est le problème, où ? Après avoir exécuté comme ceci, il n'y aura aucune valeur de retour si elle est récursive. Même si la condition else est remplie après la récursion, il n'y aura aucune valeur de retour. Elle doit être remplacée par
/* 循环去除字符串左边的0 */ function removeLeftZero($str){ if($str['0'] == '0'){ $str = substr($str, '1'); return removeLeftZero($str); // 给函数增加返回值 }else{ return $str; } }
. Résumé :
Je crois qu'à travers cet article, vous aurez une nouvelle compréhension du problème de valeur de retour dans les fonctions récursives PHP, et vous saurez également comment le résoudre. J'espère que cela vous sera utile !
Recommandations associées :
Que sont les fonctions récursives php et des exemples simples pour expliquer
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!