更新时间:2022-01-09 13:12:31
我将向你解释如何教你如何手工学习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中文网站