php static 与 java static 变量生命周期的不同

jsp示例:

<body>
<%!
static class Count {
	private static int count = 0;
	public static int getCount(){
		count++;
		return count;
	}
}
%>
<%
 out.print(Count.getCount());
 out.print("<br>");
 out.print(Count.getCount());
%>
</body>

 通过浏览器连续访问两次,分别输出:

1

2

3

4

 

php示例:

<body>
<?php

class Count{
	private static $count = 0;
	public static function getCount(){
		self::$count++;
		return self::$count;
	}
}
echo Count::getCount();
echo '<br>';
echo Count::getCount();
?>
</body>

 

通过浏览器连续两次访问,分别输出:

1

2

1

2

 

小结:

1、java的static变量伴随着java虚拟机的退出而消亡,java虚拟机运行期间,static变量一直存在。

2、php的static变量只针对一次请求(一次php文件的执行),php文件执行完毕,该static变量也随机消亡,再次请求(再次执行该php文件),会重新创建该static变量。

 

http://huangqiqing123.iteye.com/blog/1921934

你可能感兴趣的:(PHP,jsp)