__METHOD__ sihirli sabiti, bulunduğu metodun adını içerir. Bu sabit genellikle bir sınıf içindeki metodun adına programatik olarak erişmek istendiğinde veya loglama işlemlerinde kullanılır. İşte __METHOD__ sabitinin kullanımına dair bir örnek:
class ExampleClass {
public function showMethodName() {
echo "Bu metodun adı: " . __METHOD__;
}
}
$obj = new ExampleClass();
$obj->showMethodName();
?>
Bu örnekte, __METHOD__ sabiti, ExampleClass sınıfındaki showMethodName metodunun adını içerir. Metod içinde bu sabiti kullanarak, o metodun adına erişebilirsiniz.
Pratik bir örnek olarak, loglama işlemleri sırasında hangi sınıf ve metodun içinde olduğunuzun bilgisini eklemek için __METHOD__ sabiti kullanılabilir. Örneğin:
class Logger {
public function log($message) {
$log = "[" . date("Y-m-d H:i:s") . "] Metod: " . __METHOD__ . " - Mesaj: " . $message . "
";
file_put_contents("log.txt", $log, FILE_APPEND);
}
}
$logger = new Logger();
$logger->log("Bu bir log mesajıdır.");
?>
Bu örnekte, Logger sınıfının log metodunda, __METHOD__ sabiti kullanılarak, log mesajına hangi sınıf ve metodun içinde olduğumuzun bilgisi eklenir.