Насколько я знаю, использование глобальных переменных - плохая практика. На замену приходит синглтон. Я хочу сделать следующим образом: Есть функция в классе, которая бы сохраняла определенные данные в переменной, я написал этот класс так
class save
{
public $data;
public static $instance;
public function __construct()
{
}
public static function getInstance()
{
if (empty(self::$instance)) {
self::$instance = new save();
}
return self::$instance;
}
public function setData(string $value)
{
$this->data = $value;
}
}
.
После, к этой функцией обращаются из первого(любого) класса, сохраняя что либо, я написал так:
class A
{
public static function tryW()
{
$t = save::getInstance();
$t->setData('part');
}
}
Далее у меня ступор. Хочу в классе B, внутри метода обратиться к этому сохраненному значению в переменной. Я понимаю, что делаю это неправильно, пожалуйста поправьте меня:
class B
{
public static function tryGet()
{
$get = save::getInstance();
var_dump($get);
}
}