温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

为什么PHP的静态成员函数效率更高

发布时间:2021-08-26 18:07:38 来源:亿速云 阅读:138 作者:chen 栏目:开发技术

这篇文章主要讲解了“为什么PHP的静态成员函数效率更高”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“为什么PHP的静态成员函数效率更高”吧!

复制代码 代码如下:

<?php // php静态方法测试
header('Content-Type: text/html; charset=utf-8');
class xclass{
     public static $var1 = '1111111111111111';
     public $var2 = 'aaaaaaaaaaaaa';
     public function __construct()
    {
         $this -> var2 = 'bbbbbbbbbbbbbbbb';
         }
     public static function secho1()
    {
         echo self :: $var1 . '<hr />';
         }
     public function secho2()
    {
         echo $this -> var2 . '<hr />';
         }
     public function secho3()
    {
         echo 'cccccccccccccc<hr />';
         }
     }
 xclass :: secho1();
 xclass :: secho3();
 echo "------------------------------<br />";
 $xc = new xclass();
 $xc -> secho1();
 $xc -> secho2();
 ?>


认真看上面的范例,会发现一个有趣的地方,secho1()定义为静态方法后, 在动态类的对像实例中仍可以引用为动态方法,而secho3()也可以被当作静态成员函数,从这个层面,不难理解为什么说静态成员函数比动态的快。

可能是由于兼容性原因,php的类成员其实并无明显的动静态之分,所有成员在没明确声明的情况下都会被当成静态成员存放在特定的内存区中,所以调用静态成员函数就和调用普通函数一样,速度很快。

但调用动态类则不同,它要以这个类结构作为样本,在内存中重新生成一个对象实例,所以多了一个过程,这对于简单的类来说,可能不算什么,但对于复杂的类来说这是明显影响效率的。

感谢各位的阅读,以上就是“为什么PHP的静态成员函数效率更高”的内容了,经过本文的学习后,相信大家对为什么PHP的静态成员函数效率更高这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

php
AI