Задать вопрос
S4urp8n
@S4urp8n
WEB-разработчик

Как определить в самом статическом методе каким образом он был вызван?

<?php
 
  class Test {
    static public function sayHi() {}
  }
   
  $obj = new Test;
  
  //первый вариант вызова
  $obj::SayHi();
  //второй вариант вызова
  $obj->sayHi();  
?>
  • Вопрос задан
  • 161 просмотр
Подписаться 1 Оценить 1 комментарий
Решение пользователя Afatar К ответам на вопрос (3)
@Afatar
Можно так
<?php
class Test{
	private static function get_name(){
		return "Vasiliy";
	}
	public  function __call($one,$two) {
		
		return self::get_name();
		}
	public static function __callStatic($one,$two){
		echo "Static method";
		return self::get_name();}
}

$obj=new Test;
echo $obj->get_name()."<br>";;
echo Test::get_name();

Вывод
Vasiliy
Static methodVasiliy
Ответ написан
Комментировать