Code Duplication    Length = 7-21 lines in 2 locations

class/Utility.php 1 location

@@ 1261-1281 (lines=21) @@
1258
public static function isUtf8($Str)
1259
{ # by bmorel at ssi dot fr
1260
        for ($i = 0, $iMax = strlen($Str); $i < $iMax; ++$i) {
1261
            if (ord($Str[$i]) < 0x80) {
1262
                continue;
1263
            } # 0bbbbbbb
1264
            elseif ((ord($Str[$i]) & 0xE0) == 0xC0) {
1265
                $n = 1;
1266
            } # 110bbbbb
1267
            elseif ((ord($Str[$i]) & 0xF0) == 0xE0) {
1268
                $n = 2;
1269
            } # 1110bbbb
1270
            elseif ((ord($Str[$i]) & 0xF8) == 0xF0) {
1271
                $n = 3;
1272
            } # 11110bbb
1273
            elseif ((ord($Str[$i]) & 0xFC) == 0xF8) {
1274
                $n = 4;
1275
            } # 111110bb
1276
            elseif ((ord($Str[$i]) & 0xFE) == 0xFC) {
1277
                $n = 5;
1278
            } # 1111110b
1279
            else {
1280
                return false;
1281
            } # Does not match any model
1282
            for ($j = 0; $j < $n; ++$j) { # n bytes matching 10bbbbbb follow ?
1283
                if ((++$i == strlen($Str)) || ((ord($Str[$i]) & 0xC0) != 0x80)) {
1284
                    return false;

include/functions.php 1 location

@@ 720-726 (lines=7) @@
717
718
function lx_seemsUtf8($Str) { # by bmorel at ssi dot fr
719
    for ($i=0; $i<strlen($Str); $i++) {
720
        if (ord($Str[$i]) < 0x80) continue; # 0bbbbbbb
721
        elseif ((ord($Str[$i]) & 0xE0) == 0xC0) $n=1; # 110bbbbb
722
        elseif ((ord($Str[$i]) & 0xF0) == 0xE0) $n=2; # 1110bbbb
723
        elseif ((ord($Str[$i]) & 0xF8) == 0xF0) $n=3; # 11110bbb
724
        elseif ((ord($Str[$i]) & 0xFC) == 0xF8) $n=4; # 111110bb
725
        elseif ((ord($Str[$i]) & 0xFE) == 0xFC) $n=5; # 1111110b
726
        else return false; # Does not match any model
727
        for ($j=0; $j<$n; $j++) { # n bytes matching 10bbbbbb follow ?
728
            if ((++$i == strlen($Str)) || ((ord($Str[$i]) & 0xC0) != 0x80))
729
            return false;