学习型 ASP/PHP/ASP.NET 主机 30元/年全能 ASP/PHP/ASP.NET 主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付
发新话题
打印

[求助]为什么第二个输出是10个10阿,急~~~~~

[求助]为什么第二个输出是10个10阿,急~~~~~

<?php

function Test()
{
   static $c = 0;
  
   $c++;
   echo "$c";
  if ($c < 10)
    {   
       Test();
      
   }
   
    //$count--;
   echo "<p>$c";  //这个$c为什么输出的是10个10阿
   
}

Test();

?>

[[italic] 本帖最后由 C来来 于 2007-12-9 14:12 编辑 [/italic]]

TOP

没有人能告诉我这是为什么吗?

TOP

不是10个10

12345678910<p>10<p>10<p>10<p>10<p>10<p>10<p>10<p>10<p>10<p>10

这才是你这代码输出的值。
一只鹰其实不孤独,想另一只天鹅,才孤独.真正的孤独!!

TOP

if($c<10)
{
  Test();
}
这句不是只要小于10 就调用自己吗?
第二个输出又没有循环语句为什么还循环了10回阿

TOP

因為Test()自己調用自己﹐當$c從0增加到10﹐就已經調用的本身10次﹐也就是已經進入了10曾的循環﹐當從循環中出來的時候﹐都會輸出$c,而$c的值是10﹐所以就輸出了這個結果。
从头开始!!?

TOP

难道共循环20次吗?

TOP

。。。。无语了,相当于人外面的1到10,但里面的下面的10是从最外面的10开始输出的,最后输出第一个循环的1 的那个10的值,哎,我也说不清楚。。。
http://www.intoclass.cn找到组织!找到党!

TOP

不是循环20次,是10次,只是10次分两次完成的!!
从头开始!!?

TOP

静态变量保存了最后的一次10
长了翅膀的馒头才会飞

TOP

发新话题