PHP Manual suggests klas autoLoad jakKonwersja CamelCase do under_score_case w __autoload() w PHP
function __autoload($class_name){
require_once("some_dir/".$class_name.".php");
}
i takie podejście działa prawidłowo załadować klasę FooClass
zapisany w pliku my_dir/FooClass.php
jak
class FooClass{
//some implementation
}
Pytanie
Jak mogę umożliwić używanie _autoload()
funkcja i dostęp FooClass
zapisany w pliku my_dir/foo_class.php
?
Czy nie miałoby to problemów z nazwą klasy, np. * MyClassName *? –
Dzięki za odpowiedź rikh, twoja magia działa! @ cballou, kod działa również w twoim przypadku. Testowałem go na następujących nazwach klas: FooClass, fooClass, myFooClass i MyFooClass. –
@ cballou, nie, za każdym razem, gdy występuje mała litera, a następnie duża litera, między nimi wstawiane jest podkreślenie. Na koniec wywoływane jest wywołanie strtolower, aby zapewnić, że ostateczna nazwa jest cała małymi literami. –