public function set($name, $value, $offset = 0)
    {
        $s = $this->getNormalizedHeaderName($name);
        if (!isset($this->headerMap[$s][$offset])) {
            $this->add($name, $value);
            return;
        }
        $i = $this->headerMap[$s][$offset];
        $this->headers[$i] = [ $name, $value ];
        $this->headerObjects[$i] = null;
    }
public function set($name, $value, $offset = 0)
    {
        $s = $this->getNormalizedHeaderName($name);
        if (!isset($this->headerMap[$s][$offset])) {
            $this->add($name, $value);
            return;
        }
        $i = $this->headerMap[$s][$offset];
        $this->headers[$i] = [ $name, $value ];
        $this->headerObjects[$i] = null;
    }
public function set ( $ name , $ value , $ offset = 0 ) { $ s = $ this -> getNormalizedHeaderName ( $ name ) ; if ( ! isset ( $ this -> headerMap [ $ s ] [ $ offset ] ) ) { $ this -> add ( $ name , $ value ) ; return ; } $ i = $ this -> headerMap [ $ s ] [ $ offset ] ; $ this -> headers [ $ i ] = [ $ name , $ value ] ; $ this -> headerObjects [ $ i ] = null ; }
If a header exists with the passed name, and at the passed offset if more
than one exists, its value is updated.

If a header with the passed name doesn't exist at the passed offset, it
is created at the next available offset (offset is ignored when adding).

@param string $name
@param string $value
@param int $offset
If a header exists with the passed name and at the passed offset if more than one exists its value is updated .