當前位置: 首頁>>代碼示例>>PHP>>正文


PHP IPAddress::asReadable方法代碼示例

本文整理匯總了PHP中IPAddress::asReadable方法的典型用法代碼示例。如果您正苦於以下問題:PHP IPAddress::asReadable方法的具體用法?PHP IPAddress::asReadable怎麽用?PHP IPAddress::asReadable使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在IPAddress的用法示例。


在下文中一共展示了IPAddress::asReadable方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: sameSubnet

 /**
  * Is this IP in the same subnet as the supplied address?
  *
  * Accepts net masks for both IPV4 and IPV6 and will select the appropriate one, to
  * allow checking policy against request input with minimal method calls.
  *
  * @param string $matchIp  presentation form ip address to compare
  * @param int    $netMask4 network mask, bits to match <= 32 for IPV4
  * @param int    $netMask6 network mask, bits to match <=128 for IPV6
  *
  * @return bool true if $this->ip and $matchIp are both in the specified subnet
  */
 public function sameSubnet($matchIp, $netMask4, $netMask6)
 {
     $match = new IPAddress($matchIp);
     if (false === $this->ipVersion() || $this->ipVersion() !== $match->ipVersion()) {
         return false;
     }
     switch ($this->ipVersion()) {
         case 4:
             $mask = -1 << 32 - $netMask4;
             return (ip2long($this->ip) & $mask) === (ip2long($match->asReadable()) & $mask);
             break;
         case 6:
             $ipBits = $this->asBinaryString($this);
             $matchBits = $this->asBinaryString($match);
             $match = 0 === strncmp($ipBits, $matchBits, $netMask6);
             return $match;
             break;
     }
     return false;
 }
開發者ID:geekwright,項目名稱:XoopsCore25,代碼行數:32,代碼來源:IPAddress.php


注:本文中的IPAddress::asReadable方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。