gpt4 book ai didi

php - 将数据存储在静态属性中(php)

转载 作者:行者123 更新时间:2023-11-29 12:01:46 25 4
gpt4 key购买 nike

这似乎按照我想要的方式工作,但我更喜欢在到处使用它之前先询问:

假设我有这门课:

class A{

static $data = null;
public function getData(){
if(isset(self::$data)) return self::$data;
self::$data = // load sql data here
}
}

就像某种单例,但在函数本身中......

getData() 可以由外部对象调用。我不希望每次页面加载加载多个数据。

我做了一些廉价的基准测试,看起来它完全按照我想要的方式工作。

您认为这是不好的做法吗?

最佳答案

人们会争论这是否是不好的做法。如果您将数据存储在静态变量中,我建议也将 getData() 方法设置为静态。并且 $data 应设置为私有(private)或公共(public)。所以它会是:

class A {

static protected $data = null;
static public function getData(){
if(isset(self::$data)) return self::$data;
self::$data = // load sql data here
}

}

并且不要忘记在加载数据后返回数据。

关于php - 将数据存储在静态属性中(php),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32254328/

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