最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php求一個(gè)網(wǎng)段開(kāi)始與結(jié)束IP地址的方法

 更新時(shí)間:2015年07月09日 12:23:09   作者:kevin0216  
這篇文章主要介紹了php求一個(gè)網(wǎng)段開(kāi)始與結(jié)束IP地址的方法,涉及php字符串操作與進(jìn)制轉(zhuǎn)換的相關(guān)技巧,需要的朋友可以參考下

本文實(shí)例講述了php求一個(gè)網(wǎng)段開(kāi)始與結(jié)束IP地址的方法。分享給大家供大家參考。具體如下:

比如:網(wǎng)段(192168.1.5/24),其子網(wǎng)掩碼根據(jù)24劃分為:
11111111.11111111.11111111.00000000(255.255.255.0)
說(shuō)明:IP地址為32bits,24在劃分網(wǎng)段中就表示前面有24個(gè)1,后面有8個(gè)0.
開(kāi)始IP地址的算法是:192.168.1.5的二進(jìn)制與子網(wǎng)掩碼的二進(jìn)制進(jìn)行“與”運(yùn)算出來(lái)的。
結(jié)束IP地址的算法是:子網(wǎng)掩碼的二進(jìn)制先取反,然后和192.168.1.5的二進(jìn)制進(jìn)行“或”運(yùn)算
實(shí)際的就應(yīng)用中,那樣得出的是網(wǎng)絡(luò)地址和廣播地址,網(wǎng)絡(luò)地址+1才是第一個(gè)主機(jī)地址,廣播地址-1為最后一個(gè)主機(jī)地址。

<?php
function mask2bin($n)
{
  $n = intval($n);
  if($n<0||$n>32) 
  die('error submask');
  return str_repeat("1", $n).str_repeat("0",32-$n);
}
function revBin($s)
{
  $p=array('0','1','2');
  $r=array('2','0','1');
 
  return str_replace($p,$r,$s);
}
function startIp($str,$bSub)
{
  $bIp = decbin($str);
  $bIp = str_pad($bIp,8,"0",STR_PAD_LEFT);
  $sIp = bindec($bIp & $bSub);
  return $sIp;
}
function endIp($str,$bSub)
{
  $bIp = decbin($str);
  $bIp = str_pad($bIp,8,"0",STR_PAD_LEFT);
  $eIp = bindec($bIp | revBin($bSub));
  return $eIp;
}
$ip = array('192','168','1','5');//設(shè)定IP地址,可以從表單獲取,這里只作演示
$mask = '24';          //設(shè)置掩碼
$bSub = mask2bin($mask);     //將子網(wǎng)掩碼轉(zhuǎn)換二進(jìn)制
$mask = array();
$mask[] = substr($bSub,"0",8);  //將子網(wǎng)掩碼每8位分一段
$mask[] = substr($bSub,"8",8);
$mask[] = substr($bSub,"16",8);
$mask[] = substr($bSub,"24",8);
echo '<table summary="result" border="1" cellspacing="1" cellpadding="0" >
 <tbody>
  <td align="right" ><font size="2">掩碼:</font></td>
  <td>
  <font size="2">';
for ($i=0;$i<4;$i++)
{
  echo bindec($mask[$i]);
  if($i!=3)
  echo ".";
}
echo '</font>
  </td>
  </tr>
 <tr>
  <td align="right"><font size="2">網(wǎng)絡(luò)地址:</font></td>
  <td>
  <font size="2">';
  for ($i=0;$i<4;$i++)
  {
   echo startIp($ip[$i],$mask[$i]);
   if($i!=3)
   echo ".";
  }
echo '</font> 
  </td>
  </tr>
    </td>
  </tr>
 <tr>
  <td align="right"><font size="2">第一個(gè)可用:</font></td>
  <td>
  <font size="2">';
  for ($i=0;$i<3;$i++)
  {   
   echo startIp($ip[$i],$mask[$i]);  
   echo ".";
  }
  $ip_4 = startIp($ip[3],$mask[3]);
  echo ++$ip_4;
  echo '</font> 
  </td>
  </tr>
 <tr>
  <td align="right"><font size="2">最后可用:</font></td>
  <td>
  <font size="2">';
  for ($i=0;$i<3;$i++)
  {
   echo endIp($ip[$i],$mask[$i]);
   echo ".";
  }
  $ip_4 = endIp($ip[3],$mask[3]);
  echo --$ip_4;
echo '
  </font>
  </td>
  </tr>
 <tr>
  <td align="right"><font size="2">廣播地址:</font></td>
  <td>
  <font size="2">';
  for ($i=0;$i<4;$i++)
  {
   echo endIp($ip[$i],$mask[$i]);
   if($i!=3)
   echo ".";
  }
?>

希望本文所述對(duì)大家的php程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • PHP的圖像處理實(shí)例小結(jié)【文字水印、圖片水印、壓縮圖像等】

    PHP的圖像處理實(shí)例小結(jié)【文字水印、圖片水印、壓縮圖像等】

    這篇文章主要介紹了PHP的圖像處理,結(jié)合實(shí)例形式總結(jié)分析了PHP針對(duì)文字水印、圖片水印、壓縮圖像等相關(guān)操作實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2019-12-12
  • php接口與接口引用的深入解析

    php接口與接口引用的深入解析

    以下是對(duì)php中的接口與接口引用進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過(guò)來(lái)參考下
    2013-08-08
  • PHP empty函數(shù)報(bào)錯(cuò)解決辦法

    PHP empty函數(shù)報(bào)錯(cuò)解決辦法

    這篇文章主要介紹了PHP empty函數(shù)在檢測(cè)一個(gè)非變量情況下報(bào)錯(cuò)的解決辦法,需要的朋友可以參考下
    2014-03-03
  • 使用PHP連接多種數(shù)據(jù)庫(kù)的實(shí)現(xiàn)代碼(mysql,access,sqlserver,Oracle)

    使用PHP連接多種數(shù)據(jù)庫(kù)的實(shí)現(xiàn)代碼(mysql,access,sqlserver,Oracle)

    我們今天為大家介紹的PHP連接數(shù)據(jù)庫(kù)的方法包括在MYSQL數(shù)據(jù)庫(kù)、ACCESS數(shù)據(jù)庫(kù)、MS SQL數(shù)據(jù)庫(kù)和Oracle數(shù)據(jù)庫(kù)中實(shí)現(xiàn)
    2016-12-12
  • 獲取遠(yuǎn)程文件大小的php函數(shù)

    獲取遠(yuǎn)程文件大小的php函數(shù)

    用php實(shí)現(xiàn)獲取遠(yuǎn)程文件大小的代碼,需要的朋友可以參考下。
    2010-01-01
  • PHP array操作10個(gè)小技巧分享

    PHP array操作10個(gè)小技巧分享

    其實(shí)任何一門(mén)計(jì)算機(jī)語(yǔ)言中對(duì)array(數(shù)組)的操作都是一門(mén)學(xué)問(wèn),PHP也不例外。下面筆者想向各位介紹關(guān)于PHP中array操作的10個(gè)小技巧及相關(guān)的函數(shù)。
    2011-06-06
  • PHP 7.1新特性的匯總介紹

    PHP 7.1新特性的匯總介紹

    大家都知道PHP 7.1 release版本發(fā)布在即,所以這篇文章就給大家整理一下7.1中的一些新特性以供了解。所有內(nèi)容均選自官方 RFC 文檔。有需要的朋友們可以參考借鑒,下面來(lái)跟著小編一起學(xué)習(xí)學(xué)習(xí)吧。
    2016-12-12
  • 淺談PHP安全防護(hù)之Web攻擊

    淺談PHP安全防護(hù)之Web攻擊

    常見(jiàn)的Web攻擊分為兩類(lèi):一是利用Web服務(wù)器的漏洞進(jìn)行攻擊,如CGI緩沖區(qū)溢出,目錄遍歷漏洞利用等攻擊;二是利用網(wǎng)頁(yè)自身的安全漏洞進(jìn)行攻擊,如SQL注入,跨站腳本攻擊等。下面這篇文章主要介紹了PHP安全防護(hù)之Web攻擊,需要的朋友可以參考,下面來(lái)一起看看吧。
    2017-01-01
  • php獲取mysql數(shù)據(jù)庫(kù)中的所有表名的代碼

    php獲取mysql數(shù)據(jù)庫(kù)中的所有表名的代碼

    如何用PHP獲取MYSQL數(shù)據(jù)庫(kù)的所有表名?記得在mysql命令行下面有條命令SHOW TABLES是顯示mysql數(shù)據(jù)庫(kù)里面所有數(shù)據(jù)表的,那么就用這條命令來(lái)遍歷數(shù)據(jù)表名吧
    2011-04-04
  • PHP實(shí)現(xiàn)的MD5結(jié)合RSA簽名算法實(shí)例

    PHP實(shí)現(xiàn)的MD5結(jié)合RSA簽名算法實(shí)例

    這篇文章主要介紹了PHP實(shí)現(xiàn)的MD5結(jié)合RSA簽名算法,結(jié)合實(shí)例形式分析了php使用md5結(jié)合RSA實(shí)現(xiàn)的簽名算法相關(guān)操作技巧,并附帶了RSA公鑰與私鑰的相關(guān)說(shuō)明,需要的朋友可以參考下
    2017-10-10

最新評(píng)論

宣化县| 伊宁市| 万山特区| 万载县| 高平市| 沂源县| 黔西县| 仪陇县| 乌苏市| 台北县| 泾川县| 东至县| 红桥区| 凤庆县| 黔南| 西盟| 丁青县| 图木舒克市| 新竹县| 福泉市| 潮安县| 桐庐县| 马公市| 巴马| 临猗县| 大丰市| 北辰区| 叶城县| 武乡县| 阿瓦提县| 武义县| 峨边| 海盐县| 峨山| 奉贤区| 库尔勒市| 库车县| 凤翔县| 永安市| 迭部县| 廊坊市|