gpt4 book ai didi

php - 什么时候共享静态类变量?

转载 作者:可可西里 更新时间:2023-10-31 22:41:56 25 4
gpt4 key购买 nike

我对 Wordpress 环境中的 PHP 静态类变量的理解是,如果同一类的 2 个或更多对象在同一个 http 请求中被实例化,那么它们的类静态变量将被共享。

不同 http 请求呢?类静态变量是否曾在 http 请求之间共享?或者是为每个 http 请求创建对象的全新副本?

最佳答案

不,它们不是共享的。在每次请求时,都会创建全新的对象。请记住,HTTP 是无状态协议(protocol)。这就是为什么许多人认为 Singleton 是反模式 (1) 的原因。

所以,基本上如果您有以下代码:

<?php

class MyClass {

public function __construct() {
// any action
}

public function anyMethod() {
// any code
}

}

$obj = new MyClass;

$obj 是为每个请求从头开始创建的。其实,这还不是全部。您的整个应用程序是从头开始“创建”的。


1) Why is Singleton considered an anti-pattern?

关于php - 什么时候共享静态类变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31605280/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com