Articles of статическая

PHP Поздняя статическая привязка в синглтоне

У меня есть этот код из какой-то статьи на habrahabr.ru: abstract class Singleton { protected static $_instances = array(); protected function __construct() { } public static function getInstance() { $class = \get_called_class(); if ( !isset( static::$_instances[$class] ) ) static::$_instances[$class] = new static; return static::$_instances[$class]; } } Auhtor использует его, например, class B extends Singleton { […]

Что такое переадресация вызовов и статические вызовы в PHP или в противном случае поздняя статическая привязка?

Один образец кода, который я получил с веб-сайта, но мне было сложно понять результат. Я использую код: class A { public static function foo() { static::who(); } public static function who() { echo __CLASS__."\n"; } } class B extends A { public static function test() { A::foo(); parent::foo(); self::foo(); } public static function who() { […]

Разница между :: и -> в PHP

Я всегда вижу, что люди в серьезных проектах используют :: везде, и -> только изредка в местной среде. Я использую только -> и никогда не попадаю в ситуации, когда мне нужно статическое значение вне класса. Я плохой человек? Насколько я понимаю, единственная ситуация, когда -> не будет работать, когда я пытаюсь: class StaticDemo { private […]

Где размещать массивы с постоянной стоимостью, которые будут доступны во много раз?

У меня есть несколько массивов, где хранятся возможные параметры для некоторых 3D-команд принтера. Я использую это, чтобы проверить, является ли команда законной. Я смущен тем, где я должен помещать эти массивы. Эти массивы будут доступны только в функции formatcheck, и функция будет вызываться много раз, так как есть тысячи команд для проверки. Должен ли я […]

Сохраняются ли постоянные переменные в php по запросам?

Статическая переменная getcha в php Я из фона Java и недавно перешел на php для одного проекта. Я нашел одно неожиданное поведение в php. Значение, установленное для некоторой статической переменной, не остается постоянным по всем запросам. Я не уверен, что это ожидаемый бахавиус. Поскольку в java вы всегда можете использовать очень часто используемые переменные или […]

Новое я против нового статического

Я конвертирую библиотеку PHP 5.3 для работы на PHP 5.2. Главное, что стоит на моем пути, – использовать позднюю статическую привязку, такую ​​как return new static($options); , если я преобразую это, чтобы return new self($options) , я получу те же результаты? В чем разница между new self и new static ?