Example #1
0
 private static function getFlagStr($offset)
 {
     while (1) {
         fseek(self::$fp, $offset, SEEK_SET);
         $flag = ord(fgetc(self::$fp));
         if ($flag == 1 || $flag == 2) {
             $buf = fread(self::$fp, 3);
             if ($flag == 2) {
                 self::$CountryFlag = 2;
                 self::$EndIpOff = $offset - 4;
             }
             $offset = ord($buf[0]) + ord($buf[1]) * 256 + ord($buf[2]) * 256 * 256;
         } else {
             break;
         }
     }
     if ($offset < 12) {
         return '';
     }
     fseek(self::$fp, $offset, SEEK_SET);
     return self::getStr();
 }