这篇文章主要介绍了关于php面向对象之静态方法、属性和常量 ,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下
静态方法、属性
使用static关键字定义;
声明类属性或方法为静态,即可以不实例化,直接访问。
1)静态属性,不可以通过实例化对象访问;
2)静态方法,可以;
3)静态方法,不可以使用$this
立即学习“PHP免费学习笔记(深入)”;
:: 或 self::
具体如下所示:
访问位置 调用属性 调用方法 类的内部/外部 类名::属性名 类名::方法名 内部 self::属性名 self/类名::方法名
<?php
class MyClass
{
// 静态属性
public static $a = 'static';
// 静态方法
public static function func1()
{
echo '静态方法';
// 类的内部调用静态属性
echo MyClass::$a;
echo self::$a;
// 类的内部调用静态方法
MyClass::func2();
self::func2();
}
// 试验静态方法调用另一个静态方法
public static function func2()
{
echo 'This is static function 2.';
}
}
// 类的外部调用静态属性、方法
echo MyClass::$a;
MyClass::func1();
// 实例化后再调用
$me = new MyClass();
echo $me::$a; // 调用成功
// echo $me ->a; 调用失败
$me -> func1(); // 调用成功常量
const可以把类中始终不变的值,定义为常量。
Zend框架2是一个开源框架,使用PHP 5.3 +开发web应用程序和服务。Zend框架2使用100%面向对象代码和利用大多数PHP 5.3的新特性,即名称空间、延迟静态绑定,lambda函数和闭包。 Zend框架2的组成结构是独一无二的;每个组件被设计与其他部件数的依赖关系。 ZF2遵循SOLID面向对象的设计原则。 这样的松耦合结构可以让开发人员使用他们想要的任何部件。我们称之为“松耦合”
344
常量的值,必须是一个定值。
调用方法,同static。
class MyClass
{
public static $a = 'abc';
const NUM = 123;
}
echo MyClass::$a;
echo '<br/>';
echo MyClass::NUM;
echo '<br/>';
// 修改静态属性
MyClass::$a = 'def';
echo MyClass::$a;
echo '<br/>';
// 修改常量
//MyClass::NUM = 234; 赋值失败相关推荐:
以上就是php面向对象之静态方法、属性和常量的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号