Анонимная функция: нужно ли через use передавать $this в php 7.x?

Анонимная функция: нужно ли через use передавать $this в php 7.x ?

В callback функции нужно использовать метод класса, нужно ли передавать $this через use?

class A {

   public $mysql = null;

   ...

   public function run(): void {
       $other = new Other;
       $other->result(function (array $data) {
           $this->mysql->query(...); // работает ли это ? с какой это версии ? и нужно ли передавать через use $this в анонимную функцию
       });

   }

}

$


Ответы (1 шт):

Автор решения: Blacknife

Необходимости нет начиная с PHP 5.4, при объявлении анонимной функции в контексте класса, текущий класс будет автоматически связан с ней, делая $this доступным внутри функции. Если вы не хотите автоматического связывания с текущим классом, используйте static function (){...}, это предотвратит автоматическое связывание с текущим классом.

→ Ссылка