ホームページ >バックエンド開発 >PHPチュートリアル >PHPの高度な関数
递归函数
所谓的函数递归调用,就是函数可以在其声明的执行叙述之中调用执行自己。
通常在此类型的函数之中会附加一个条件判断叙述,以判断是否需要执行递归调用,并且在特定条件下终止函数的递归调用动作,把目前流程的主控权交回上一层函数执行。因此当某个执行递归调用的函数,没有附加条件判断叙述时可能会造成无限循环的错误情形.
函数递归调用最大的好处在于可以精简程序中繁杂重复调用程序,并且能以这种特性来执行一些较为复杂的运算动作。(打过代码的都知道==)
<?php //error_reporting(0); $dirname = "./phpmyadmin"; function fordir($dirname) { //打开目录资源 $dir = opendir($dirname); readdir($dir); readdir($dir); while( $file = readdir($dir)) { $nfile = $dirname.'/'.$file; if(is_dir($nfile)){ echo "目录: {$nfile}<br>"; } else { echo "文件: {$nfile}<br>"; } } closedir($dir); //关闭 } fordir($dirname);
吓死本宝宝了
自己还傻乎乎的去找了屏蔽警告的代码,然后什么都不出现了(⊙﹏⊙)b,机智的我看了一下警告提示信息,啊,原来是得自己建这个文件夹呀~~半个月前看的视频,具体细节早忘了
待我在www文件夹中建了文件夹之后就出现了酱紫的答案:
文件: ./phpmyadmin/callback.php
文件: ./phpmyadmin/callback1.php
文件: ./phpmyadmin/callback2.php
文件: ./phpmyadmin/callback3.php
文件: ./phpmyadmin/callback4.php
文件: ./phpmyadmin/callback5.php
再看看课件里的例子~
<?php function test($n){ echo $n."  "; if($n>0) test($n-1); else echo ""; echo $n." "; } test(10);
function test($n){
echo $n." ";
if($n>0)
test($n-1);
else echo "";
echo $n." ";
}
test(10);
直接转化了 orz
 什么意思?html转义字符啊,干嘛的 ?输出空格的→_→你说你html学啥了 ??
字符 |
十进制 |
转义字符 |
" |
" |
" |
& |
& |
& |
< | ||
> | > | > |
不断开空格(non-breaking space) |
|
输出啥?
10 9 8 7 6 5 4 3 2 1 0 0 1 2 3 4 5 6 7 8 9 10
以上就介绍了PHPの高度な関数,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。