c/** * Opens an IMAP stream to a mailbox. * * This function can also be used to open streams to POP3 and * NNTP servers, but some functions and features are only * available on IMAP servers. * * @param string $mailbox A mailbox name consists of a server and a mailbox path on this server. * The special name INBOX stands for the current users * personal mailbox. Mailbox names that contain international characters * besides those in the printable ASCII space have to be encoded with * imap_utf7_encode. * * The server part, which is enclosed in '{' and '}', consists of the servers * name or ip address, an optional port (prefixed by ':'), and an optional * protocol specification (prefixed by '/'). * * The server part is mandatory in all mailbox * parameters. * * All names which start with { are remote names, and are * in the form "{" remote_system_name [":" port] [flags] "}" * [mailbox_name] where: * * * * remote_system_name - Internet domain name or * bracketed IP address of server. * * * * * port - optional TCP port number, default is the * default port for that service * * * * * flags - optional flags, see following table. * * * * * mailbox_name - remote mailbox name, default is INBOX * * * * * * Optional flags for names * * * * Flag * Description * * * * * /service=service * mailbox access service, default is "imap" * * * /user=user * remote user name for login on the server * * * /authuser=user * remote authentication user; if specified this is the user name * whose password is used (e.g. administrator) * * * /anonymous * remote access as anonymous user * * * /debug * record protocol telemetry in application's debug log * * * /secure * do not transmit a plaintext password over the network * * * /imap, /imap2, * /imap2bis, /imap4, * /imap4rev1 * equivalent to /service=imap * * * /pop3 * equivalent to /service=pop3 * * * /nntp * equivalent to /service=nntp * * * /norsh * do not use rsh or ssh to establish a preauthenticated IMAP * session * * * /ssl * use the Secure Socket Layer to encrypt the session * * * /validate-cert * validate certificates from TLS/SSL server (this is the default * behavior) * * * /novalidate-cert * do not validate certificates from TLS/SSL server, needed if * server uses self-signed certificates * * * /tls * force use of start-TLS to encrypt the session, and reject * connection to servers that do not support it * * * /notls * do not do start-TLS to encrypt the session, even with servers * that support it * * * /readonly * request read-only mailbox open (IMAP only; ignored on NNTP, and * an error with SMTP and POP3) * * * * * @param string $username The user name * @param string $password The password associated with the username * @param int $options The options are a bit mask with one or more of * the following: * * * * OP_READONLY - Open mailbox read-only * * * * * OP_ANONYMOUS - Don't use or update a * .newsrc for news (NNTP only) * * * * * OP_HALFOPEN - For IMAP * and NNTP names, open a connection but * don't open a mailbox. * * * * * CL_EXPUNGE - Expunge mailbox automatically upon mailbox close * (see also imap_delete and * imap_expunge) * * * * * OP_DEBUG - Debug protocol negotiations * * * * * OP_SHORTCACHE - Short (elt-only) caching * * * * * OP_SILENT - Don't pass up events (internal use) * * * * * OP_PROTOTYPE - Return driver prototype * * * * * OP_SECURE - Don't do non-secure authentication * * * * @param int $n_retries Number of maximum connect attempts * @param array|null $params Connection parameters, the following (string) keys maybe used * to set one or more connection parameters: * * * * DISABLE_AUTHENTICATOR - Disable authentication properties * * * * @return resource Returns an IMAP stream on success. * @throws ImapException * */.' . '/sabre/event/lib/Loop/Loop.php', 'Sabre\\Event\\Promise' => __DIR__ . '/..' . '/sabre/event/lib/Promise.php', $output .= sprintf("\n%s%s%s", $prefix, str_repeat(' ', $this->indentation), $row); } continue; } if ($inline - 1 <= 0 || null === $value->getValue() || \is_scalar($value->getValue())) { $output .= ' '.$this->dump($value->getValue(), $inline - 1, 0, $flags)."\n"; } else { $output .= "\n"; $output .= $this->dump($value->getValue(), $inline - 1, $dumpAsMap ? $indent + $this->indentation : $indent + 2, $flags); } continue; } $dumpObjectAsInlineMap = true; if (Yaml::DUMP_OBJECT_AS_MAP & $flags && ($value instanceof \ArrayObject || $value instanceof \stdClass)) { $dumpObjectAsInlineMap = empty((array) $value); } $willBeInlined = $inline - 1 <= 0 || !\is_array($value) && $dumpObjectAsInlineMap || empty($value); $output .= sprintf('%s%s%s%s', $prefix, $dumpAsMap ? Inline::dump($key, $flags).':' : '-', $willBeInlined ? ' ' : "\n", $this->dump($value, $inline - 1, $willBeInlined ? 0 : $indent + $this->indentation, $flags) ).($willBeInlined ? "\n" : ''); } } return $output; } private function dumpTaggedValue(TaggedValue $value, int $inline, int $indent, int $flags, string $prefix): string { $output = sprintf('%s!%s', $prefix ? $prefix.' ' : '', $value->getTag()); if (Yaml::DUMP_MULTI_LINE_LITERAL_BLOCK & $flags && \is_string($value->getValue()) && str_contains($value->getValue(), "\n") && !str_contains($value->getValue(), "\r\n")) { $blockIndentationIndicator = $this->getBlockIndentationIndicator($value->getValue()); $output .= sprintf(' |%s', $blockIndentationIndicator); foreach (explode("\n", $value->getValue()) as $row) { $output .= sprintf("\n%s%s%s", $prefix, str_repeat(' ', $this->indentation), $row); } return $output; } if ($inline - 1 <= 0 || null === $value->getValue() || \is_scalar($value->getValue())) { return $output.' '.$this->dump($value->getValue(), $inline - 1, 0, $flags)."\n"; } return $output."\n".$this->dump($value->getValue(), $inline - 1, $indent, $flags); } private function getBlockIndentationIndicator(string $value): string { $lines = explode("\n", $value); // If the first line (that is neither empty nor contains only spaces) // starts with a space character, the spec requires a block indentation indicator // http://www.yaml.org/spec/1.2/spec.html#id2793979 foreach ($lines as $line) { if ('' !== trim($line, ' ')) { return (' ' === substr($line, 0, 1)) ? (string) $this->indentation : ''; } } return ''; } } An Error Occurred: Internal Server Error

Oops! An Error Occurred

The server returned a "500 Internal Server Error".

Something is broken. Please let us know what you were doing when this error occurred. We will fix it as soon as possible. Sorry for any inconvenience caused.