Autoload with composer of classes inside a single file

You have two other options besides PSR-4 (or PSR-0):

  1. classmap - this will scan directories or files for all classes that are contained, and the result is put into a PHP array in a file. This requires to dump the autoloader whenever there is a change being made to the files being scanned.
  2. files - the mentioned file(s) will be included whenever the Composer autoloader is included.

So you could either add the file with the autogenerated classes to be scanned with the classmap autoloader, which would load that file on the first usage of ANY of the classes in there, or you could add it to the files autoloading, which will always be included, no matter if the classes are being used or not.

If considering performance, the first alternative is preferred unless the amount of classes is huge and the amount of code in the classes is tiny. Having plenty of tiny classes in a classmap probably is more overhead than always just loading them in the first place.

Having plenty of code in these classes, and they are not always used, the amount or memory saved by NOT always loading them might be faster.

If in doubt: Measure it. And consider to split the classes into single files and use PSR-4 if it is too much of a performance penalty.