Ich versteh die Frage nicht.
Und ich verstehe die namespaces nicht^^
Nehmen wir mal folgende index.php
<?php
namespace Projekt;
use Projekt\Module\foo;
require_once('autoload.php');
$foo = new foo(); // Projekt\Module\foo
$bar = new bar(); // Projekt\bar
?>
autoload.php
<?php
function __autoload($strClassName){
echo $strClassName;
}
?>
foo.php
<?php
namespace Projekt\Module\foo;
class foo{
public function run(){ }
}
?>
bar.php
<?php
namespace Projekt\Module\foo;
class bar{
public function run(){ }
}
?>
Wieso erhalte ich da völlig verschiedene Angaben?
Mir ist überhaupt nicht klar wie ich das nutzen kann, dass sich gleiche Klassennamen nicht beissen. Wenn ich 2 identische Dateien/Klassen in die Ordner Projekt\Module\foo und Projekt\Module\bar kopiere, wie sprech ich die denn überhaupt an? Beim autoloader kommt offenbar nur noch der namespace und nicht mehr der Klassenname an. Ich verstehe es nicht :(