diff options
author | Andrew Dolgov <[email protected]> | 2021-02-26 19:16:17 +0300 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2021-02-26 19:16:17 +0300 |
commit | 3fd785654372d493c031d9b541ab33a881023a32 (patch) | |
tree | 0a76cb410217074378de3d7012b95754cd3c7e6f /vendor/thecodingmachine/safe/generated/mbstring.php | |
parent | bc4475b6698f5a74e475674aa7af43253c459892 (diff) |
* switch to composer for qrcode and otp dependencies
* move most OTP-related stuff into userhelper
* remove old phpqrcode and otphp libraries
Diffstat (limited to 'vendor/thecodingmachine/safe/generated/mbstring.php')
-rw-r--r-- | vendor/thecodingmachine/safe/generated/mbstring.php | 526 |
1 files changed, 526 insertions, 0 deletions
diff --git a/vendor/thecodingmachine/safe/generated/mbstring.php b/vendor/thecodingmachine/safe/generated/mbstring.php new file mode 100644 index 000000000..fa0829438 --- /dev/null +++ b/vendor/thecodingmachine/safe/generated/mbstring.php @@ -0,0 +1,526 @@ +<?php + +namespace Safe; + +use Safe\Exceptions\MbstringException; + +/** + * + * + * @param int $cp + * @param string $encoding + * @return string Returns a specific character. + * @throws MbstringException + * + */ +function mb_chr(int $cp, string $encoding = null): string +{ + error_clear_last(); + if ($encoding !== null) { + $result = \mb_chr($cp, $encoding); + } else { + $result = \mb_chr($cp); + } + if ($result === false) { + throw MbstringException::createFromPhpError(); + } + return $result; +} + + +/** + * Sets the automatic character + * encoding detection order to encoding_list. + * + * @param mixed $encoding_list encoding_list is an array or + * comma separated list of character encoding. See supported encodings. + * + * If encoding_list is omitted, it returns + * the current character encoding detection order as array. + * + * This setting affects mb_detect_encoding and + * mb_send_mail. + * + * mbstring currently implements the following + * encoding detection filters. If there is an invalid byte sequence + * for the following encodings, encoding detection will fail. + * + * For ISO-8859-*, mbstring + * always detects as ISO-8859-*. + * + * For UTF-16, UTF-32, + * UCS2 and UCS4, encoding + * detection will fail always. + * @return bool|array When setting the encoding detection order, TRUE is returned on success. + * + * When getting the encoding detection order, an ordered array of the encodings is returned. + * @throws MbstringException + * + */ +function mb_detect_order($encoding_list = null) +{ + error_clear_last(); + if ($encoding_list !== null) { + $result = \mb_detect_order($encoding_list); + } else { + $result = \mb_detect_order(); + } + if ($result === false) { + throw MbstringException::createFromPhpError(); + } + return $result; +} + + +/** + * Returns an array of aliases for a known encoding type. + * + * @param string $encoding The encoding type being checked, for aliases. + * @return array Returns a numerically indexed array of encoding aliases on success + * @throws MbstringException + * + */ +function mb_encoding_aliases(string $encoding): array +{ + error_clear_last(); + $result = \mb_encoding_aliases($encoding); + if ($result === false) { + throw MbstringException::createFromPhpError(); + } + return $result; +} + + +/** + * Scans string for matches to + * pattern, then replaces the matched text + * with the output of callback function. + * + * The behavior of this function is almost identical to mb_ereg_replace, + * except for the fact that instead of + * replacement parameter, one should specify a + * callback. + * + * @param string $pattern The regular expression pattern. + * + * Multibyte characters may be used in pattern. + * @param callable $callback A callback that will be called and passed an array of matched elements + * in the subject string. The callback should + * return the replacement string. + * + * You'll often need the callback function + * for a mb_ereg_replace_callback in just one place. + * In this case you can use an + * anonymous function to + * declare the callback within the call to + * mb_ereg_replace_callback. By doing it this way + * you have all information for the call in one place and do not + * clutter the function namespace with a callback function's name + * not used anywhere else. + * @param string $string The string being checked. + * @param string $option The search option. See mb_regex_set_options for explanation. + * @return string The resultant string on success. + * @throws MbstringException + * + */ +function mb_ereg_replace_callback(string $pattern, callable $callback, string $string, string $option = "msr"): string +{ + error_clear_last(); + $result = \mb_ereg_replace_callback($pattern, $callback, $string, $option); + if ($result === false) { + throw MbstringException::createFromPhpError(); + } + return $result; +} + + +/** + * + * + * @param string $pattern The regular expression pattern. + * + * Multibyte characters may be used in pattern. + * @param string $replacement The replacement text. + * @param string $string The string being checked. + * @param string $option + * @return string The resultant string on success. + * @throws MbstringException + * + */ +function mb_ereg_replace(string $pattern, string $replacement, string $string, string $option = "msr"): string +{ + error_clear_last(); + $result = \mb_ereg_replace($pattern, $replacement, $string, $option); + if ($result === false) { + throw MbstringException::createFromPhpError(); + } + return $result; +} + + +/** + * + * + * @return array + * @throws MbstringException + * + */ +function mb_ereg_search_getregs(): array +{ + error_clear_last(); + $result = \mb_ereg_search_getregs(); + if ($result === false) { + throw MbstringException::createFromPhpError(); + } + return $result; +} + + +/** + * mb_ereg_search_init sets + * string and pattern + * for a multibyte regular expression. These values are used for + * mb_ereg_search, + * mb_ereg_search_pos, and + * mb_ereg_search_regs. + * + * @param string $string The search string. + * @param string $pattern The search pattern. + * @param string $option The search option. See mb_regex_set_options for explanation. + * @throws MbstringException + * + */ +function mb_ereg_search_init(string $string, string $pattern = null, string $option = "msr"): void +{ + error_clear_last(); + if ($option !== "msr") { + $result = \mb_ereg_search_init($string, $pattern, $option); + } elseif ($pattern !== null) { + $result = \mb_ereg_search_init($string, $pattern); + } else { + $result = \mb_ereg_search_init($string); + } + if ($result === false) { + throw MbstringException::createFromPhpError(); + } +} + + +/** + * Returns the matched part of a multibyte regular expression. + * + * @param string $pattern The search pattern. + * @param string $option The search option. See mb_regex_set_options for explanation. + * @return array + * @throws MbstringException + * + */ +function mb_ereg_search_regs(string $pattern = null, string $option = "ms"): array +{ + error_clear_last(); + if ($option !== "ms") { + $result = \mb_ereg_search_regs($pattern, $option); + } elseif ($pattern !== null) { + $result = \mb_ereg_search_regs($pattern); + } else { + $result = \mb_ereg_search_regs(); + } + if ($result === false) { + throw MbstringException::createFromPhpError(); + } + return $result; +} + + +/** + * + * + * @param int $position The position to set. If it is negative, it counts from the end of the string. + * @throws MbstringException + * + */ +function mb_ereg_search_setpos(int $position): void +{ + error_clear_last(); + $result = \mb_ereg_search_setpos($position); + if ($result === false) { + throw MbstringException::createFromPhpError(); + } +} + + +/** + * + * + * @param string $pattern The regular expression pattern. Multibyte characters may be used. The case will be ignored. + * @param string $replace The replacement text. + * @param string $string The searched string. + * @param string $option + * @return string The resultant string. + * @throws MbstringException + * + */ +function mb_eregi_replace(string $pattern, string $replace, string $string, string $option = "msri"): string +{ + error_clear_last(); + $result = \mb_eregi_replace($pattern, $replace, $string, $option); + if ($result === false) { + throw MbstringException::createFromPhpError(); + } + return $result; +} + + +/** + * Set/Get the HTTP output character encoding. + * Output after this function is called will be converted from the set internal encoding to encoding. + * + * @param string $encoding If encoding is set, + * mb_http_output sets the HTTP output character + * encoding to encoding. + * + * If encoding is omitted, + * mb_http_output returns the current HTTP output + * character encoding. + * @return string|bool If encoding is omitted, + * mb_http_output returns the current HTTP output + * character encoding. Otherwise, + * Returns TRUE on success. + * @throws MbstringException + * + */ +function mb_http_output(string $encoding = null) +{ + error_clear_last(); + if ($encoding !== null) { + $result = \mb_http_output($encoding); + } else { + $result = \mb_http_output(); + } + if ($result === false) { + throw MbstringException::createFromPhpError(); + } + return $result; +} + + +/** + * Set/Get the internal character encoding + * + * @param string $encoding encoding is the character encoding name + * used for the HTTP input character encoding conversion, HTTP output + * character encoding conversion, and the default character encoding + * for string functions defined by the mbstring module. + * You should notice that the internal encoding is totally different from the one for multibyte regex. + * @return string|bool If encoding is set, then + * Returns TRUE on success. + * In this case, the character encoding for multibyte regex is NOT changed. + * If encoding is omitted, then + * the current character encoding name is returned. + * @throws MbstringException + * + */ +function mb_internal_encoding(string $encoding = null) +{ + error_clear_last(); + if ($encoding !== null) { + $result = \mb_internal_encoding($encoding); + } else { + $result = \mb_internal_encoding(); + } + if ($result === false) { + throw MbstringException::createFromPhpError(); + } + return $result; +} + + +/** + * + * + * @param string $str + * @param string $encoding + * @return int Returns a code point of character. + * @throws MbstringException + * + */ +function mb_ord(string $str, string $encoding = null): int +{ + error_clear_last(); + if ($encoding !== null) { + $result = \mb_ord($str, $encoding); + } else { + $result = \mb_ord($str); + } + if ($result === false) { + throw MbstringException::createFromPhpError(); + } + return $result; +} + + +/** + * Parses GET/POST/COOKIE data and + * sets global variables. Since PHP does not provide raw POST/COOKIE + * data, it can only be used for GET data for now. It parses URL + * encoded data, detects encoding, converts coding to internal + * encoding and set values to the result array or + * global variables. + * + * @param string $encoded_string The URL encoded data. + * @param array|null $result An array containing decoded and character encoded converted values. + * @throws MbstringException + * + */ +function mb_parse_str(string $encoded_string, ?array &$result): void +{ + error_clear_last(); + $result = \mb_parse_str($encoded_string, $result); + if ($result === false) { + throw MbstringException::createFromPhpError(); + } +} + + +/** + * Set/Get character encoding for a multibyte regex. + * + * @param string $encoding The encoding + * parameter is the character encoding. If it is omitted, the internal character + * encoding value will be used. + * @return string|bool + * @throws MbstringException + * + */ +function mb_regex_encoding(string $encoding = null) +{ + error_clear_last(); + if ($encoding !== null) { + $result = \mb_regex_encoding($encoding); + } else { + $result = \mb_regex_encoding(); + } + if ($result === false) { + throw MbstringException::createFromPhpError(); + } + return $result; +} + + +/** + * Sends email. Headers and messages are converted and encoded according + * to the mb_language setting. It's a wrapper function + * for mail, so see also mail for details. + * + * @param string $to The mail addresses being sent to. Multiple + * recipients may be specified by putting a comma between each + * address in to. + * This parameter is not automatically encoded. + * @param string $subject The subject of the mail. + * @param string $message The message of the mail. + * @param string|array|null $additional_headers String or array to be inserted at the end of the email header. + * + * This is typically used to add extra headers (From, Cc, and Bcc). + * Multiple extra headers should be separated with a CRLF (\r\n). + * Validate parameter not to be injected unwanted headers by attackers. + * + * If an array is passed, its keys are the header names and its + * values are the respective header values. + * + * When sending mail, the mail must contain + * a From header. This can be set with the + * additional_headers parameter, or a default + * can be set in php.ini. + * + * Failing to do this will result in an error + * message similar to Warning: mail(): "sendmail_from" not + * set in php.ini or custom "From:" header missing. + * The From header sets also + * Return-Path under Windows. + * + * If messages are not received, try using a LF (\n) only. + * Some Unix mail transfer agents (most notably + * qmail) replace LF by CRLF + * automatically (which leads to doubling CR if CRLF is used). + * This should be a last resort, as it does not comply with + * RFC 2822. + * @param string $additional_parameter additional_parameter is a MTA command line + * parameter. It is useful when setting the correct Return-Path + * header when using sendmail. + * + * This parameter is escaped by escapeshellcmd internally + * to prevent command execution. escapeshellcmd prevents + * command execution, but allows to add additional parameters. For security reason, + * this parameter should be validated. + * + * Since escapeshellcmd is applied automatically, some characters + * that are allowed as email addresses by internet RFCs cannot be used. Programs + * that are required to use these characters mail cannot be used. + * + * The user that the webserver runs as should be added as a trusted user to the + * sendmail configuration to prevent a 'X-Warning' header from being added + * to the message when the envelope sender (-f) is set using this method. + * For sendmail users, this file is /etc/mail/trusted-users. + * @throws MbstringException + * + */ +function mb_send_mail(string $to, string $subject, string $message, $additional_headers = null, string $additional_parameter = null): void +{ + error_clear_last(); + $result = \mb_send_mail($to, $subject, $message, $additional_headers, $additional_parameter); + if ($result === false) { + throw MbstringException::createFromPhpError(); + } +} + + +/** + * + * + * @param string $pattern The regular expression pattern. + * @param string $string The string being split. + * @param int $limit + * @return array The result as an array. + * @throws MbstringException + * + */ +function mb_split(string $pattern, string $string, int $limit = -1): array +{ + error_clear_last(); + $result = \mb_split($pattern, $string, $limit); + if ($result === false) { + throw MbstringException::createFromPhpError(); + } + return $result; +} + + +/** + * This function will return an array of strings, it is a version of str_split with support for encodings of variable character size as well as fixed-size encodings of 1,2 or 4 byte characters. + * If the split_length parameter is specified, the string is broken down into chunks of the specified length in characters (not bytes). + * The encoding parameter can be optionally specified and it is good practice to do so. + * + * @param string $string The string to split into characters or chunks. + * @param int $split_length If specified, each element of the returned array will be composed of multiple characters instead of a single character. + * @param string $encoding The encoding + * parameter is the character encoding. If it is omitted, the internal character + * encoding value will be used. + * + * A string specifying one of the supported encodings. + * @return array mb_str_split returns an array of strings. + * @throws MbstringException + * + */ +function mb_str_split(string $string, int $split_length = 1, string $encoding = null): array +{ + error_clear_last(); + if ($encoding !== null) { + $result = \mb_str_split($string, $split_length, $encoding); + } else { + $result = \mb_str_split($string, $split_length); + } + if ($result === false) { + throw MbstringException::createFromPhpError(); + } + return $result; +} |