Olha uma maneira "burra" se fazer, gostaria de algo mais dinâmico. Em java script poderia se usar o eval... function chamaMetodo($tipo, $valores) {
switch (count($valores)){
case'1': $this->stmt->bind_param($tipo, $valores[0]) or die($this->stmt->error); break;
case'2': $this->stmt->bind_param($tipo, $valores[0], $valores[1]) or die($this->stmt->error); break;
case'3': $this->stmt->bind_param($tipo, $valores[0], $valores[1], $valores[2]) or die($this->stmt->error); break;
case'4': $this->stmt->bind_param($tipo, $valores[0], $valores[1], $valores[2], $valores[3])or die($this->stmt->error); break;
case'5': $this->stmt->bind_param($tipo, $valores[0], $valores[1], $valores[2], $valores[3], $valores[4])or die($this->stmt->error); break;
case'6': $this->stmt->bind_param($tipo, $valores[0], $valores[1], $valores[2], $valores[3], $valores[4], $valores[5])or die($this->stmt->error); break;
case'7': $this->stmt->bind_param($tipo, $valores[0], $valores[1], $valores[2], $valores[3], $valores[4], $valores[5], $valores[6])or die($this->stmt->error); break;
case'8': $this->stmt->bind_param($tipo, $valores[0], $valores[1], $valores[2], $valores[3], $valores[4], $valores[5], $valores[6], $valores[7])or die($this->stmt->error); break;
}
}