Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/cvetdv.ru/bitrix/modules/main/vendor/geoip2/geoip2/src/ |
Upload File : |
<?php declare(strict_types=1); namespace GeoIp2; class Util { /** * This returns the network in CIDR notation for the given IP and prefix * length. This is for internal use only. * * @internal * @ignore */ public static function cidr(string $ipAddress, int $prefixLen): string { $ipBytes = inet_pton($ipAddress); $networkBytes = str_repeat("\0", \strlen($ipBytes)); $curPrefix = $prefixLen; for ($i = 0; $i < \strlen($ipBytes) && $curPrefix > 0; $i++) { $b = $ipBytes[$i]; if ($curPrefix < 8) { $shiftN = 8 - $curPrefix; $b = \chr(0xFF & (\ord($b) >> $shiftN) << $shiftN); } $networkBytes[$i] = $b; $curPrefix -= 8; } $network = inet_ntop($networkBytes); return "$network/$prefixLen"; } }