MySQLi-extension class (parameterized queries)
You use a very complicated way to extract the first element of an array.  Just use array_shift instead.

$query = array_shift($arguments);

Use foreach instead of a for loop:

foreach ($params as $param) {
    $lp = explode(":", $param); //I changed preg_split to explode, because you use a static delimiter
    $queryTypes[] = $lp[1];
    $queryParams[] = &amp;$arguments[$lp[0]];
}