PHP Производительность: избегайте частого вызова метода - PullRequest
1 голос
/ 03 февраля 2020

У меня вопрос по поводу PHP производительности. Я использую свои методы класса очень часто в одном случае. Например, у меня есть метод для расчета времени начала смены производства. Расчет можно использовать только один раз, потому что для всех расчетов одинаковое время начала.

Инструмент анализа: xdebug (эта функция вызывается в основном и занимает больше всего времени)

Каков наилучший способ выполнения сценария? Я не хочу делать много переменных stati c (около 20). Или лучший способ - использовать функции stati c для этого случая?

Теперь для очень часто вызываемых функций я использую:

class test{
   private $data;

        public function __construct () {
         $this->data=0;
        }

        public function foo() {
          if($this->data === 0) {
          // some code

           $this->data=$result;
          }
        return $this->data;
        }
}

Я думаю, что это не хороший способ решить мою проблему. Спасибо за ваше время.

1 Ответ

2 голосов
/ 03 февраля 2020

Использование функций установки для установки свойств объекта является правильным способом go. Единственное отличие, которое я сделал бы, - это удаление возврата из функции foo () и просто прямой доступ к свойству, когда это необходимо.

 public function foo() {

    // some code

     $this->data=$result;
  }

Теперь после однократного вызова foo () вы можете использовать $ this- > data для доступа к результату каждый раз без повторного вызова функции и выполнения ненужных вычислений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...