环球科创网

2022年01月09日整理发布:手把手教你学php递归函数

更新时间:2022-01-09 13:12:31

导读 我将向你解释如何教你如何手工学习php递归函数。相信朋友们也应该密切关注这个话题。现在,我们来谈谈如何教你如何手把手地为朋友学习php递

我将向你解释如何教你如何手工学习php递归函数。相信朋友们也应该密切关注这个话题。现在,我们来谈谈如何教你如何手把手地为朋友学习php递归函数。边肖还收集了如何手把手教你学习php递归函数的相关信息。我希望你看到后会喜欢。

递归是指函数在其函数体中调用自己。执行递归函数会反复调用自身,每次调用都会进入一个新的层次。递归函数必须有结束条件。让我们和边肖一起学习递归。

递归是将一个相对复杂的问题(原问题)转化为与原问题相似的更小的问题(子问题)来解决的思想,以此类推。小问题解决了,最后的大问题自然就解决了。递归方法只需要少量程序来描述解题过程中所需要的重复计算,大大减少了程序的代码量。当然递归函数并不完美,也有一些缺点,就是递归函数效率不高。在PHP中,递归层数并不是无限的,这与程序的内存限制有关。PHP5允许一个程序使用128M内存,所以当递归层数太多时,程序会产生致命错误而退出。PHP7允许256M的内存。

递归函数就是在函数内部调用自己。执行递归函数会反复调用自身,每次调用都会进入一个新的层次。递归函数必须有结束条件。当函数遇到墙后递归返回墙时,就是结束条件。因此,递归需要两个要素:结束条件和递归关系。

注意: Functions在被调用和执行的过程中,会在内存中分配空间来存储临时数据,所以默认情况下函数之间是没有连接的(静态变量、按引用传递和全局变量除外)。里面的变量默认都是局部变量,互不影响。让我们看一个例子来加深我们的印象:

?服务器端编程语言(Professional Hypertext Preprocessor的缩写)

功能演示($ num){ 0

//

if($ num==1 | | $ num==2){ 0

返回1;

}else{

返回demo($ num-1)demo($ num-2);

}

}

回声序列的第十位是。演示(10);//数列的第10位数字是:55。

?这个例子是不是有点耳熟?这是斐波那契数列。当我们计算斐波那契序列时,与其他方法相比仍然很困难,但是递归函数的效率要高得多。

推荐教程:《PHP视频教程》以上是手把手教你php递归函数的细节!

来源:php中文网站

免责声明:本文由用户上传,如有侵权请联系删除!