static关键字在PHP中有三种用途:1. 静态属性属于类本身,所有实例共享,通过self::或类名访问,可用于对象计数;2. 静态方法无需实例化即可调用,只能访问静态成员,适合工具函数;3. 函数内的静态变量在多次调用间保持值,用于缓存或计数,作用域仍限函数内。

在 PHP 中,static 关键字有多种用途,主要涉及类的结构和变量作用域。它并不只是“静态方法”这么简单。以下是 static 的三种常见使用方式,每种都有其特定场景和行为特点。
静态属性属于类本身,而不是类的某个实例。这意味着所有该类的对象共享同一个静态属性值。
通过 self:: 或 类名:: 访问静态属性,不能用 $this->。
示例:
启科网络商城系统由启科网络技术开发团队完全自主开发,使用国内最流行高效的PHP程序语言,并用小巧的MySql作为数据库服务器,并且使用Smarty引擎来分离网站程序与前端设计代码,让建立的网站可以自由制作个性化的页面。 系统使用标签作为数据调用格式,网站前台开发人员只要简单学习系统标签功能和使用方法,将标签设置在制作的HTML模板中进行对网站数据、内容、信息等的调用,即可建设出美观、个性的网站。
0
立即学习“PHP免费学习笔记(深入)”;
class Counter {
public static $count = 0;
public function __construct() {
self::$count++;
}
}
echo Counter::$count; // 输出: 0
new Counter();
new Counter();
echo Counter::$count; // 输出: 2
静态方法可以直接通过类名调用,无需实例化对象。它们通常用于工具函数或工厂方法。
静态方法内部只能访问静态属性和其他静态方法,不能使用 $this。
示例:
立即学习“PHP免费学习笔记(深入)”;
class MathUtils {
public static function add($a, $b) {
return $a + $b;
}
}
echo MathUtils::add(3, 5); // 输出: 8
这个用法出现在函数内部,不是类相关。static 变量在函数执行结束后不会销毁,下次调用时保留上次的值。
这种特性常用于缓存结果或记录调用次数。
示例:
立即学习“PHP免费学习笔记(深入)”;
function sayHello() {
static $called = 0;
$called++;
echo "Hello called $called times.\n";
}
sayHello(); // 输出: Hello called 1 times.
sayHello(); // 输出: Hello called 2 times.
sayHello(); // 输出: Hello called 3 times.
基本上就这些。理解这三种 static 的使用方式,能帮助你在不同场景下更合理地组织代码逻辑。虽然写法相似,但语义和作用完全不同,注意区分上下文。不复杂但容易忽略细节。
以上就是php static的三种使用方法的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号