Isn't the question somewhat contradictory? If you have 10+ classes and you want to have them to depend on something else together to be in a 'debug' state, then you can't really keep them completely independent. The point is that you will necessarily be dependent of something; I think your best take is to choose what's the least entangling solution.
I can think of two ways: using a define and using an environment variable.
I'd use a define:
define('DEBUG', true);
And in each of my class files, before declaring the class, I'd check if the constant exists:
if(!defined('DEBUG')) define('DEBUG', $my_default_debug_value);
So they can still work in a standalone fashion, but you're still dependent on a constant.
Another possibility would be to rely on an environment variable, but that could fail under safe_mode if you have no grip over which environment variables are allowed. I personally wouldn't use it because I don't like them, but maybe it's just what you're looking for.
putenv('MYPROJECTNAME_DEBUG=1');
Then getenv can be used to retrieve the 'MYPROJECTNAME_DEBUG' environment variable; it will be false if it can't be found.
getenv('MYPROJECTNAME_DEBUG');