src/MixedPart.php
protected function _headers($options, $mime, $charset, $encoding, $length)
    {
        $headers = !empty($options['headers']) ? $options['headers'] : [];

        if (!empty($options['disposition'])) {
            $parts = [$options['disposition']];
            foreach (['name', 'filename'] as $name) {
                if (!empty($options[$name])) {
                    $value = htmlspecialchars_decode(htmlspecialchars($options[$name], ENT_NOQUOTES | ENT_IGNORE, 'UTF-8'), ENT_NOQUOTES);
                    $value = preg_replace('~[\s/\\\]~', '', $value);
                    $value = addcslashes($value, '"');
                    $parts[] = "{$name}=\"{$value}\"";
                }
            }
            $headers[] = "Content-Disposition: " . join('; ', $parts);
        }

        if (!empty($options['id'])) {
            $headers[] = 'Content-ID: ' . $options['id'];
        }

        if (!empty($mime)) {
            $charset = $charset ? '; charset=' . $charset : '';
            $headers[] = 'Content-Type: ' . $mime . $charset;
        }

        if (!empty($encoding)) {
            $headers[] = 'Content-Transfer-Encoding: ' . $encoding;
        }

        if (!empty($options['length'])) {
            $headers[] = 'Content-Length: ' . $length;
        }

        if (!empty($options['description'])) {
            $headers[] = 'Content-Description: ' . $options['description'];
        }

        if (!empty($options['location'])) {
            $headers[] = 'Content-Location: ' . $options['location'];
        }

        if (!empty($options['language'])) {
            $headers[] = 'Content-Language: ' . $options['language'];
        }
        return $headers;
    }
protected function _headers($options, $mime, $charset, $encoding, $length)
    {
        $headers = !empty($options['headers']) ? $options['headers'] : [];

        if (!empty($options['disposition'])) {
            $parts = [$options['disposition']];
            foreach (['name', 'filename'] as $name) {
                if (!empty($options[$name])) {
                    $value = htmlspecialchars_decode(htmlspecialchars($options[$name], ENT_NOQUOTES | ENT_IGNORE, 'UTF-8'), ENT_NOQUOTES);
                    $value = preg_replace('~[\s/\\\]~', '', $value);
                    $value = addcslashes($value, '"');
                    $parts[] = "{$name}=\"{$value}\"";
                }
            }
            $headers[] = "Content-Disposition: " . join('; ', $parts);
        }

        if (!empty($options['id'])) {
            $headers[] = 'Content-ID: ' . $options['id'];
        }

        if (!empty($mime)) {
            $charset = $charset ? '; charset=' . $charset : '';
            $headers[] = 'Content-Type: ' . $mime . $charset;
        }

        if (!empty($encoding)) {
            $headers[] = 'Content-Transfer-Encoding: ' . $encoding;
        }

        if (!empty($options['length'])) {
            $headers[] = 'Content-Length: ' . $length;
        }

        if (!empty($options['description'])) {
            $headers[] = 'Content-Description: ' . $options['description'];
        }

        if (!empty($options['location'])) {
            $headers[] = 'Content-Location: ' . $options['location'];
        }

        if (!empty($options['language'])) {
            $headers[] = 'Content-Language: ' . $options['language'];
        }
        return $headers;
    }
protected function _headers ( $ options , $ mime , $ charset , $ encoding , $ length ) { $ headers = ! empty ( $ options [ 'headers' ] ) ? $ options [ 'headers' ] : [ ] ; if ( ! empty ( $ options [ 'disposition' ] ) ) { $ parts = [ $ options [ 'disposition' ] ] ; foreach ( [ 'name' , 'filename' ] as $ name ) { if ( ! empty ( $ options [ $ name ] ) ) { $ value = htmlspecialchars_decode ( htmlspecialchars ( $ options [ $ name ] , ENT_NOQUOTES | ENT_IGNORE , 'UTF-8' ) , ENT_NOQUOTES ) ; $ value = preg_replace ( '~[\s/\\\]~' , '' , $ value ) ; $ value = addcslashes ( $ value , '"' ) ; $ parts [ ] = "{$name}=\"{$value}\"" ; } } $ headers [ ] = "Content-Disposition: " . join ( '; ' , $ parts ) ; } if ( ! empty ( $ options [ 'id' ] ) ) { $ headers [ ] = 'Content-ID: ' . $ options [ 'id' ] ; } if ( ! empty ( $ mime ) ) { $ charset = $ charset ? '; charset=' . $ charset : '' ; $ headers [ ] = 'Content-Type: ' . $ mime . $ charset ; } if ( ! empty ( $ encoding ) ) { $ headers [ ] = 'Content-Transfer-Encoding: ' . $ encoding ; } if ( ! empty ( $ options [ 'length' ] ) ) { $ headers [ ] = 'Content-Length: ' . $ length ; } if ( ! empty ( $ options [ 'description' ] ) ) { $ headers [ ] = 'Content-Description: ' . $ options [ 'description' ] ; } if ( ! empty ( $ options [ 'location' ] ) ) { $ headers [ ] = 'Content-Location: ' . $ options [ 'location' ] ; } if ( ! empty ( $ options [ 'language' ] ) ) { $ headers [ ] = 'Content-Language: ' . $ options [ 'language' ] ; } return $ headers ; }
Extract headers form streams options.

@param  array  $options The stream end user options.
@param  string $length  The length of the encoded stream.
@return array
Extract headers form streams options .