静态变量
一般用于函数内,需要使用static关键字定义,静态变量的赋值语句只会执行一次。
- 第一次执行display,会执行static $i=10,i再加1,再输出i,函数执行后i不会被回收
- 第二次执行display,不会执行static $i=10;i再加1,再输出i,函数执行i不会被回收
- 第三次执行display,不会执行static $i=10;i再加1,再输出i,函数执行i不会被回收
- 第四次执行display,不会执行static $i=10;i再加1,再输出i,函数执行i不会被回收
函数递归
在函数体内调用函数本身,就是递归
语法:
function display(){
echo ‘a’;
echo ‘b’;
if(条件){
display();
}
}
代码示例:
流程图:
猴子吃桃,第一天吃了一半,多吃一个,第二天吃了一半,多吃一个,……
第十天想吃时,只有一个了,问第一天共几个桃子。
(1+1)*2
(4+1)*2
(10+1)*2
注意:在递归函数内声明了static 类型的静态变量,那么这个静态变量是公共的,也就是说,每次函数执行时,都会访问同一个静态变量,所以,如果某个函数修改了这个静态变量的值,那么其它函数取值时也会发生变化。
本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/3329.html
如有侵犯您的合法权益请发邮件951076433@qq.com联系删除