Avoid call_user_func_array in query method

I just kept the previous approach (see `(is_string($args[1]) || is_array($args[1])`).
I'm having a hard time understanding this `is_string` condition. Should we have something like `$this->executeQuery($args[0], array($args[1]));` ? But why only for strings and not, for instance, for integers?