I am not a fan of Composer for many reasons. 1st reason shared hosting services do not offer composer as a package therefor it makes it harder to deliver low budget applications or simple MVC custom frameworks. Here is a work around that is compliant with PSR4 standards.
Assuming you add this auto-load method in a file in the root directory and that we are auto-loading classes for everything inside a folder called "src" here is how to archive this.
define('ROOT', dirname(__DIR__));
define('SLASH', DIRECTORY_SEPARATOR);
spl_autoload_register(function ($className)
{
$fileName = sprintf("%s%ssrc%s%s.php", ROOT, SLASH, SLASH, str_replace("\\", "/", $className));
if (file_exists($fileName))
{
require ($fileName);
}
else
{
echo "file not found {$fileName}";
}
});
now in every file you should add a namespace and if you have a dependency the use. here is a basic example in
namespace myapp;
use Core\Example;
Also, all your folders inside src should start with a capital letter in my example.
and done. Cheers @jerryurenaa