dicevo, il concetto è lo stesso: alla funzione dell'autoload arriva il class name completo richiesto, dove completo si intende comprensivo di autoload. Quindi se scrivi

use My/Cool/Library/Foo

o fai

new My/Cool/Library/Foo();

o quant'altro, l'autoload ti manda come className My/Cool/Library/Foo. Ora, come per qualsiasi altro autoload normale, te devi mappare className ad una risorsa fisica, e per fare questo si prende in genere a riferimento il namespace e il nome della classe. esempio:

diciamo che abbiamo una cartella src/ che contiene tutte le nostre classi e namespaces. Vogliamo caricare la classe

My/Cool/Library/Foo

allora l'autoload andrà a caricare, ad esempio, il file:

src/My/Cool/Library/Foo.php

e via discorrendo. Uno standard a riguardo è la notazione PSR-0, dove sostanzialmente si mette come root del namespace il VendorName e poi i vari namespace e la struttura del folder rispecchia di conseguenza questo formato.

qui un articolo che dovrebbe essere chiarificatore in merito http://phpmaster.com/autoloading-and...sr-0-standard/

Facciamo un passo ulteriore:

usa composer per gestire il tuo progetto (http://getcomposer.org) per due motivi:

1) ti fornisce già lui un sistema di autoiloading al quale agganciare le tue classi ( vedi http://getcomposer.org/doc/01-basic-usage.md paragrafo "autoloading")

2) avendo composer, facilmente puoi integrare nel tuo progetto librerie di terze parti, potendo scegliere tra un bel catalogo di librerie https://packagist.org/

3) se non è già una standard, di fatto il suo utilizzo lo è o lo diventerà a breve, tanto vale impararlo ad usare (una sciocchezza) ed usarlo (ancora di più una siocchezza) piuttosto che riscrivere l'ennesimo autoloader (anche se volendo puoi sostituire quello di composer ed usare le sue informazioni solo per capire la mappatura tra namespace e struttura folder. cmq c'è l'esempio nella documentazione)