private function subVars($query, $vars = [])
    {
        if (!is_array($vars)) {
            $vars = [$vars];
        }

        $queryParts = explode( "?", $query );
        if ( count( $queryParts ) -1 != count ( $vars ) ) {
            throw new \Exception( "Number of variables supplied does not match number of ?s in the query!" );
        }

        $finalQuery = $queryParts[0];
        $queryPartNo = 0;
        foreach ( $vars as $var ) {
            $var = $this->escapifyVariable($var);
            $queryPartNo++;
            $finalQuery .= $var . $queryParts[$queryPartNo];
        }

        return $finalQuery;
    }