Vote Details for "Debug" by justinpatrin

» Details
» Comment
The class files must be installed to PHP/ and PHP/Debug to conform to class naming. The require calls must also be changes to accomodate this.

You should choose a different license, the PHP license has proven to be problematic and incompatible with the GPL.

Your options arrays use keys that start with DEBUG_. Why? If they are options for this package it's not really needed. Upon further inspection I see that you allow options for different parts of the package to be put in the same array. Instead of using a prefix I suggest you instead use sub-arrays.

array('DEBUG' => array('xxx' => 'yyy'),
'HTML_DIV' => array('zzz' => 'aaa'));

print calls should not have parenthesis. Additionally, echo is usually preferred over print.

Errors should not cause output directly (e.g. in watch). Please throw an exception instead.

return shouldn't have extra parenthesis (e.g. in getProcessTime()).

Since you have getMicroTimeNow() I would prefer you used it instead of getMicroTime(microtime()) (e.g. in render()).

getDisplay() is a good feature but the function name seems a bit off to me. It should be more like getOutput(). Also, doing this with output buffering seems like a hack to me. Why not make the rendering layer buffer internally and simply output it in render()?

You don't need to put quotes around single variables. (e.g. $GLOBALS["$ArrayTitle"])

Please use single quotes for strings with no variable substitution.

I would also prefer that all variable substitution be replaced with single quotes and concatenation.

Lots of code here and it looks very useful. :-)