php面向对象static静态成员函数的作用

其实我认为,php类里面的static成员函数,最大的作用是,可以把相关的函数整合在一起,并且防止了命名冲突,这点有些类似命名空间,但是这点比命名空间操作更友好。

实例对比,编写测试页面test.php 如下;

<?php
class str
{  
   static function test($x,$y,$z)
   {
      return $x+$y+$z;
   }
}
function test($x,$y,$z)
{
      return $x+$y+$z;
}
?>

 另建立一个页面,test2.php,代码如下:

<?php
$a=memory_get_usage();
include('test.php');
$str::test(1,2,3);//单独用这行代码或者单独用下面的一行代码,效果一样,占用的内容都一样的;
test(1,2,3);//此行代码和上面的代码可以同时运行,static静态成员函数是一个解决函数命名冲突的一个好办法; $b=memory_get_usage(); echo $b-$a;
//本机测试,上面输出结果为3032

下面的代码输出也都是3032,是一样的结果,
//代码块1:
$a=memory_get_usage();
include('test.php');
test(1,2,3);
$b=memory_get_usage();
echo $b-$a;
//代码块2:
$a=memory_get_usage();
include('test.php');
str::test(1,2,3);
$b=memory_get_usage();
echo $b-$a;
//代码块3如下:
$a=memory_get_usage();
include('test.php');
$b=memory_get_usage();
echo $b-$a;
//代码1和代码2和代码3的结果输出都是一样的,说明占用的内存是一样的,也就是在执行函数以后,静态成员函数,或者直接定义的函数都会被释放内存; ?>

 

转载于:https://www.cnblogs.com/anxuexi/archive/2013/03/04/2943017.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值