This is more for analyzing a query in PHP BEFORE it\'s sent to the server. Very complicated why im doing this, so i\'d rather not go into the reason for this.
In PHP
You would have to write a parser almost as complex as MySQL's query parser (written in YACC/Bison for C). It's not going to be a regular expression or a little string manipulation. This is a nonregular language, you can't parse them without an actual parser.
You can't just walk through the string finding commas and parentheses either, SQL is much more complex than that. You have expressions within expressions, function calls, conditional logic, etc. all of which can be nested arbitrarily deep with commas and parentheses all over.
http://dev.mysql.com/doc/refman/5.0/en/expressions.html
If you really want to do this with PHP, you have a big job ahead of yourself.
For anyone coming across this question in the future someone has already gone to the trouble of writting an SQL parser in PHP.
At present it supports SELECT, INSERT, UPDATE, DELETE and REPLACE statements.