Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/phpmyadmin/phpmyadmin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Foellmann <foellmann@foe-services.de>2014-12-23 14:48:13 +0300
committerChristian Foellmann <foellmann@foe-services.de>2014-12-23 14:48:13 +0300
commit2bfb20e57418ebf396149782be9f98e868fe8608 (patch)
treea5ec4011410970603d3f462a535a5a359057fa77 /libraries/stringMb.lib.php
parent20f1bf77c8281efc675a14e0f6bf52f657dabd9a (diff)
UPDATE 4.3.34.3.3
Diffstat (limited to 'libraries/stringMb.lib.php')
-rw-r--r--libraries/stringMb.lib.php78
1 files changed, 78 insertions, 0 deletions
diff --git a/libraries/stringMb.lib.php b/libraries/stringMb.lib.php
new file mode 100644
index 0000000000..652dde06b4
--- /dev/null
+++ b/libraries/stringMb.lib.php
@@ -0,0 +1,78 @@
+<?php
+/* vim: set expandtab sw=4 ts=4 sts=4: */
+/** String Functions for phpMyAdmin
+ *
+ * If mb_* functions don't exist, we create the ones we need and they'll use the
+ * standard string functions.
+ *
+ * All mb_* functions created by pMA should behave as mb_* functions.
+ *
+ * @package PhpMyAdmin
+ */
+if (! defined('PHPMYADMIN')) {
+ exit;
+}
+
+if (!@function_exists('mb_ord')) {
+ mb_internal_encoding('utf-8');
+
+ /**
+ * Perform a regular expression match
+ *
+ * Take care: might not work with lookbehind expressions.
+ *
+ * @param string $pattern Pattern to search for
+ * @param string $subject Input string
+ * @param int $offset Start from search
+ *
+ * @return int 1 if matched, 0 if doesn't, false on failure
+ */
+ function mb_preg_strpos($pattern, $subject, $offset = 0)
+ {
+ $matches = array();
+ $bFind = preg_match(
+ $pattern, mb_substr($subject, $offset), $matches, PREG_OFFSET_CAPTURE
+ );
+ if (1 !== $bFind) {
+ return false;
+ }
+
+ return $matches[1][1] + $offset;
+ }
+
+ /**
+ * Get the ordinal value of a string
+ *
+ * @param string $string the string for which ord is required
+ *
+ * @return int the ord value
+ */
+ function mb_ord($string)
+ {
+ if (false === $string || null === $string || '' === $string) {
+ return 0;
+ }
+
+ $str = mb_convert_encoding($string, "UCS-4BE", "UTF-8");
+ $substr = mb_substr($str, 0, 1, "UCS-4BE");
+ $val = unpack("N", $substr);
+ return $val[1];
+ }
+
+ /**
+ * Get the character of an ASCII
+ *
+ * @param int $ascii the ASCII code for which character is required
+ *
+ * @return string the character
+ */
+ function mb_chr($ascii)
+ {
+ return mb_convert_encoding(
+ pack("N", $ascii),
+ mb_internal_encoding(),
+ 'UCS-4BE'
+ );
+ }
+
+}