今日课程:PHP 3天基础巩固视频教程【燕十八】

1、递归概念

function sum($n){if($n == 1){return 1;}return $n + sum($n - 1);
}
echo sum(100);
echo "<br />";

2、递归技巧

//递归技巧
//假设法--假设自己的函数已经完成
//用递归打印当前目录下的所有文件目录及子目录
function printdir($a,$lev = 1){$dh = opendir($a);while (($row = readdir($dh)) !== false){
echo str_repeat('&nbsp;', $lev),$row,'<br />';
if('.' == $row || '..'== $row){continue;
}
if (is_dir($a.'/'.$row)) {
printdir($a.'/'.$row);
}}
closedir($dh);
}
$a = '.';
printdir($a,$lev);

3、static静态变量

$arr = array(1,2,3,array(4,array(5,6)));
//写递归函数,计算所有单元的和
function sun($arr){static $sum = 0;foreach ($arr as $v) {if(is_array($v)){sun($v);} else {$sum += $v;    }
}echo $sum,'<br />';//11,4,6return $sum;
}
echo sun($arr);

休息

转载于:https://blog.51cto.com/lonelyman/1950927

翻身的废鱼——论PHP从入门到放弃需要多久?15相关推荐

  1. 翻身的废鱼——论PHP从入门到放弃需要多久?13

    今日课程:PHP 3天基础巩固视频教程[燕十八] 1.位运算 /* 位运算,是针对字节上的位来进行计算 把位上的0/1当成假/真 10进制 2进制 13 8+4+1 0000 1101 12 8+4 ...

  2. 深聊性能测试,从入门到放弃之:如何对IO进行性能调优

    1.引言 2. 硬盘知识 2.1 磁盘原理 2.2 磁盘接口 2.3 磁盘读写 2.4 磁盘KPI 2.5 计算 2.5.1 IOPS计算 2.5.2 传输速率/吞吐率计算 2.6 IO延时 2.6. ...

  3. 深聊性能测试,从入门到放弃之: Windows系统性能监控(一) 性能监视器介绍及使用。

    性能监视器介绍及使用 1.引言 2.性能监视器 2.1 打开方式 2.2 基本介绍 2.3 计数器介绍 2.3.1 处理器性能计数器 2.3.2 内存性能计数器 2.3.3 网络性能计数器 2.4 创 ...

  4. Java从入门到放弃09---多态/向上转型/向下转型/多态内存图/抽象类/关键字abstract不能和哪些关键字共存/接口/类与类,类与接口,接口与接口的关系/抽象类与接口的区别

    Java从入门到放弃09-多态/向上转型/向下转型/多态内存图/抽象类/关键字abstract不能和哪些关键字共存/接口/类与类,类与接口,接口与接口的关系/抽象类与接口的区别 01 多态 多态指的是 ...

  5. 深聊性能测试,从入门到放弃之: Windows系统性能监控(二) 资源监控器介绍及使用。

    资源监控器介绍及使用 1.引言 2.资源监视器 2.1 打开方式 2.2 基本介绍 2.3 使用 3.总结 1.引言 小屌丝:鱼哥,我看了你这篇<Windows系统性能监控(一) 性能监视器介绍 ...

  6. AI从入门到放弃2:CNN的导火索,用MLP做图像分类识别?

    来源 | 腾讯知乎专栏 作者 | AIoys(腾讯员工,后台工程师) 项目文档和代码在此:github项目地址: https://github.com/zsysuper/AI_Notes ▌一.前言 ...

  7. AOP埋点从入门到放弃(二)

    其实人最大悲哀莫过于知道自己想要什么,却不知道怎么坚持!最近迷恋上了死侍 其实和我平时的状态差不多,以一个混子的心态去做任何事情,往往成功的概率会更大!!! 一张图片镇楼!!! 上文说到了Aspect ...

  8. 入门到放弃node系列之网络模块(二)

    为什么80%的码农都做不了架构师?>>>    前言 本文首发[一名打字员] 上一节我们刚刚介绍完node的HTTP和HTTPS模块,相信我们也对nodejs有了更深层次的理解,接下 ...

  9. webpack - vue Component 从入门到放弃(三)

    离上一篇已经一个星期了,人的拖延症是没法救的,今晚趁着蒙蒙春雨,来抒发抒发情感. 上一篇简单介绍了webpack的配置,这里稍微再做一一下延伸 插件 插件可以完成更多 loader 不能完成的功能.插 ...

最新文章

  1. 微博广告分布式配置中心的构建与实践
  2. 评论:玉米可利用气生根进行高效生物固氮
  3. Quartz教程:快速入门
  4. linux下的C语言开发(静态库)
  5. pku1631 Bridging signals
  6. 从 0 开始机器学习 - 机器学习系统的设计与误差分析
  7. Jconsole使用实例解说
  8. CentOS 6.x通过yum安装php7.1及相关环境
  9. Dreamweaver/Flash CS4安装后打开时提示此产品的许可已停止工作
  10. smobiler中实现页面切换_Smobiler如何实现.net一键开发,ios和android跨平台运行
  11. 清华大学计算机考研信息汇总
  12. 打造地图拼接利器(五)地图采集与拼接
  13. 获取中文拼音或拼音首字母方法
  14. 华为5g cpe 虚拟服务器,购买华为5G CPE Pro 2之前你需要知道这些
  15. 用java画爱心图_用java输出一个心型图案
  16. 短信通知-阿里大鱼 申请AK 发送Until
  17. hermit插值 matlab,埃尔米特(Hermite)插值及其MATLAB程序
  18. python实现AES对文件加解密(这里使用ECB密码本模式)
  19. Java分页处理的三种方式
  20. 理解vue-admin-template模板,连接后端改造登陆功能

热门文章

  1. solr 5.3.1安装配置
  2. 2011 年最重要的 10 个开源软件
  3. 在Linux server上建立NAS文件服务器
  4. Python练习题(day1)
  5. 阿里云Redis集群版简要介绍
  6. Nginx多站点设置
  7. 演示:PPPOE服务端、拨号路由器、拨号计算机的配置
  8. freemarker-ide eclipse安装地址 安装方法 页面静态化
  9. eclipse导入myeclipse的web项目在eclipse中不能识别成web项目
  10. 《Linus Torvalds 自传》摘录