User
if ($header_value[0] != '"') { while (($i != strlen($header_value)) && ($header_value[$i] != '"')) $i++; ...
if (*i == '"') { while (i != header_value.end() && *i != '"') ++i; ....
а разве условия здесь противоположные?