Code Duplication    Length = 7-7 lines in 4 locations

src/voku/helper/UTF8.php 4 locations

@@ 4465-4471 (lines=7) @@
4462
      self::checkForSupport();
4463
    }
4464
4465
    if (
4466
        $encoding === 'UTF-8' // INFO: "grapheme_stripos()" can't handle other encodings
4467
        &&
4468
        self::$SUPPORT['intl'] === true
4469
    ) {
4470
      return \grapheme_stripos($haystack, $needle, $offset);
4471
    }
4472
4473
    // fallback to "mb_"-function via polyfill
4474
    return \mb_stripos($haystack, $needle, $offset, $encoding);
@@ 4860-4866 (lines=7) @@
4857
      }
4858
    }
4859
4860
    if (
4861
        $encoding === 'UTF-8' // INFO: "grapheme_stripos()" can't handle other encodings
4862
        &&
4863
        self::$SUPPORT['intl'] === true
4864
    ) {
4865
      return \grapheme_strpos($haystack, $needle, $offset);
4866
    }
4867
4868
    if (
4869
        $offset >= 0 // iconv_strpos() can't handle negative offset
@@ 5061-5067 (lines=7) @@
5058
      return \mb_strripos($haystack, $needle, $offset, $encoding);
5059
    }
5060
5061
    if (
5062
        $encoding === 'UTF-8' // INFO: "grapheme_stripos()" can't handle other encodings
5063
        &&
5064
        self::$SUPPORT['intl'] === true
5065
    ) {
5066
      return \grapheme_strripos($haystack, $needle, $offset);
5067
    }
5068
5069
    // fallback via vanilla php
5070
@@ 5132-5138 (lines=7) @@
5129
      return \mb_strrpos($haystack, $needle, $offset, $encoding);
5130
    }
5131
5132
    if (
5133
        $encoding === 'UTF-8' // INFO: "grapheme_stripos()" can't handle other encodings
5134
        &&
5135
        self::$SUPPORT['intl'] === true
5136
    ) {
5137
      return \grapheme_strrpos($haystack, $needle, $offset);
5138
    }
5139
5140
    // fallback via vanilla php
5141