Protocol\FCGI\Record\Params::packPayload PHP Method

packPayload() protected method

Implementation of packing the payload
protected packPayload ( ) : string
return string
    protected function packPayload()
    {
        $payload = '';
        foreach ($this->values as $nameData => $valueData) {
            $nameLength = strlen($nameData);
            $valueLength = strlen($valueData);
            $isLongName = $nameLength > 127;
            $isLongValue = $valueLength > 127;
            $formatParts = array($isLongName ? 'N' : 'C', $isLongValue ? 'N' : 'C', "a{$nameLength}", "a{$valueLength}");
            $format = join('', $formatParts);
            $payload .= pack($format, $isLongName ? $nameLength | 0x80000000 : $nameLength, $isLongValue ? $valueLength | 0x80000000 : $valueLength, $nameData, $valueData);
        }
        return $payload;
    }