I am working on a PHP library, which may be used in various environments by different PHP projects and I'm trying to be as minimalistic as possible.
In some circumstances I have to throw exceptions, for instance.
throw Exception('template has invalid tag');
The error like that is not very useful without the name of the tag:
throw Exception('template has invalid tag: '.$tag);
This would would be hard to localize and may result all sorts of injection problems.
QUESTION: What is the best way to pass extra variables with Exception in PHP?
(note: my library perform SQL Query building and I would prefer it to focus on the task, not solving problems with Exceptions)