Использование __FUNCTION__
- это путь вместо:
public function something() {
$thisMethodName = "something";
}
, который имеет несколько недостатков: добавление переменной и памяти для хранения имени метода в виде строки и дублирование того, что уже существует, что приводит к ненужному добавлению используемых ресурсов (если вы делаете это для большой библиотеки со многими методами, это очень важно ).
Магические константы в PHP гарантированно не изменятся, в то время как этот подход потребует соответствующего редактирования, если имя метода будет изменено, что создаст возможность для несогласованности (заметьте, я действительно сказал потенциально, то есть просто это ненужное редактирование в противном случае если вместо этого использовалась магическая константа).
Время и усилия для присвоения имени переменной, заново введите имя метода в виде строки, присвоенной этой ненужной переменной, и, конечно, правильно ссылаясь на имя переменной, что является мотивацией для PHP, предоставляющего магические константы для начала (и опровергающего любая претензия __FUNCTION__
не нужна).