code: protected function startsWithAnyLongest(array &$with, $caseSensitive, &$length = null, &$content = null)
      {
          if (empty($with)) {
              return false;
          }
  
          if (!is_array(reset($with))) {
              usort($with, function ($string1, $string2) {
                  return mb_strlen($string2, 'UTF-8') - mb_strlen($string1, 'UTF-8');
              });
              $map = [];
              foreach ($with as $string) {
                  $map[mb_strlen($string, 'UTF-8')][$caseSensitive ? $string : mb_strtoupper($string, 'UTF-8')] = true;
              }
              $with = $map;
          }
          foreach ($with as $testLength => $testValues) {
              $content = $this->substring($testLength, $caseSensitive);
              if (isset($testValues[$content])) {
                  $length = $testLength;
                  return true;
              }
          }
  
          return false;
      }
docs: Returns whether the longest common prefix equals to the SQL code of the same length at the current offset.
  @param string[] $with strings to be tested.
  The method **will** modify this parameter to speed up lookups.
  @param bool $caseSensitive whether to perform a case sensitive comparison.
  @param int|null $length length of the matched string.
  @param string|null $content matched string.
  @return bool whether a match is found.