코드 일부 수정
This commit is contained in:
+14
-13
@@ -183,19 +183,20 @@ class StringUtil
|
||||
}
|
||||
|
||||
public static function uniord(string $c) {
|
||||
if (ord($c{0}) >=0 && ord($c{0}) <= 127)
|
||||
return ord($c{0});
|
||||
if (ord($c{0}) >= 192 && ord($c{0}) <= 223)
|
||||
return (ord($c{0})-192)*64 + (ord($c{1})-128);
|
||||
if (ord($c{0}) >= 224 && ord($c{0}) <= 239)
|
||||
return (ord($c{0})-224)*4096 + (ord($c{1})-128)*64 + (ord($c{2})-128);
|
||||
if (ord($c{0}) >= 240 && ord($c{0}) <= 247)
|
||||
return (ord($c{0})-240)*262144 + (ord($c{1})-128)*4096 + (ord($c{2})-128)*64 + (ord($c{3})-128);
|
||||
if (ord($c{0}) >= 248 && ord($c{0}) <= 251)
|
||||
return (ord($c{0})-248)*16777216 + (ord($c{1})-128)*262144 + (ord($c{2})-128)*4096 + (ord($c{3})-128)*64 + (ord($c{4})-128);
|
||||
if (ord($c{0}) >= 252 && ord($c{0}) <= 253)
|
||||
return (ord($c{0})-252)*1073741824 + (ord($c{1})-128)*16777216 + (ord($c{2})-128)*262144 + (ord($c{3})-128)*4096 + (ord($c{4})-128)*64 + (ord($c{5})-128);
|
||||
if (ord($c{0}) >= 254 && ord($c{0}) <= 255) // error
|
||||
$c0 = ord($c{0});
|
||||
if ($c0 >=0 && $c0 <= 127)
|
||||
return $c0;
|
||||
if ($c0 >= 192 && $c0 <= 223)
|
||||
return ($c0-192)*64 + (ord($c{1})-128);
|
||||
if ($c0 >= 224 && $c0 <= 239)
|
||||
return ($c0-224)*4096 + (ord($c{1})-128)*64 + (ord($c{2})-128);
|
||||
if ($c0 >= 240 && $c0 <= 247)
|
||||
return ($c0-240)*262144 + (ord($c{1})-128)*4096 + (ord($c{2})-128)*64 + (ord($c{3})-128);
|
||||
if ($c0 >= 248 && $c0 <= 251)
|
||||
return ($c0-248)*16777216 + (ord($c{1})-128)*262144 + (ord($c{2})-128)*4096 + (ord($c{3})-128)*64 + (ord($c{4})-128);
|
||||
if ($c0 >= 252 && $c0 <= 253)
|
||||
return ($c0-252)*1073741824 + (ord($c{1})-128)*16777216 + (ord($c{2})-128)*262144 + (ord($c{3})-128)*4096 + (ord($c{4})-128)*64 + (ord($c{5})-128);
|
||||
if ($c0 >= 254 && $c0 <= 255) // error
|
||||
return FALSE;
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user