Ben tüm sınıf adının bir dize olup olmadığını nasıl bir sınıf statik bir yöntemini çağırabilir?

3 Cevap

Nasıl böyle bir şey işe almak istiyorsunuz?

$class_name = 'ClassPeer';
$class_name::doSomething();

3 Cevap

PHP sürümüne bağlı olarak:

call_user_func(array($class_name, 'doSomething'));
call_user_func($class_name .'::doSomething'); // >5.2.3

Yansıma (PHP 5 destekliyorsa) Bunu nasıl yapardım olduğunu. O sayfayı okuyun ve bunun gibi işlevi çağırmak için nasıl anlamaya gerekir.


$func = new ReflectionFunction('somefunction');
$func->invoke();

Documentation Link