PHP实现递归目录的5种方法_php实例_脚本之家

来源:http://www.sh-fengwen.com 作者:家常菜谱 人气:77 发布时间:2019-11-26
摘要:递归的定义 项目开发中免不了要在服务器上创建文件夹,比如上传图片时的目录,模板解析时的目录等。这不当前手下的项目就用到了这个,于是总结了几个循环创建目录的方法。 递

递归的定义

项目开发中免不了要在服务器上创建文件夹,比如上传图片时的目录,模板解析时的目录等。这不当前手下的项目就用到了这个,于是总结了几个循环创建目录的方法。

递归(http:/en.wikipedia.org/wiki/Recursive)是一种函数调用自身的一种机制,这种强大的思想可以把某些复杂的概念变得极为简单。在计算机科学之外,尤其是在数学中,递归的概念屡见不鲜。例如:最常用于递归讲解的斐波那契数列便是一个极为典型的例子,而其他的例如阶层也可以转化为递归的定义.即使是在现实生活中,递归的思想也是随处可见:例如,由于学业问题你需要校长盖章,然而校长却说“只有教导主任盖章了我才会盖章”,当你找到教导主任,教导主任又说:“只有系主任盖章了我才会盖章”...直到你最终找到班主任,在得到班主任豪爽的盖章之后,你要依次返回到系主任、教导主任、最后得到校长的盖章,过程如下:

方法一:使用glob循环

递归函数是一种调用自己的函数。写递归函数时要小心,因为可能会无穷递归下去。必须确保有充分的方法来终止递归。

方法二:使用dir && read循环

一:使用 参数引用 完成递归函数。操作的是同一块内存地址。

read { $p = realpath; if ($file != "." && $file != "..") { $arr[] = $p; } if  && $file != "." && $file != "..") { myscandir2; } }}?> 

二:使用 全局变量 完成递归函数。

方法三:使用opendir && readdir循环

在函数域内部用 global 语句导入的一个真正的全局变量实际上是建立了一个到全局变量的引用。例子中,test()函数内部的 $i 实际上只是程序第一行中的变量 $i 的一个应用;

方法四:使用scandir循环

三:使用 静态变量 完成递归函数。

方法五:使用SPL循环

本文由美高梅游戏平台网站发布于家常菜谱,转载请注明出处:PHP实现递归目录的5种方法_php实例_脚本之家

关键词:

最火资讯