php和js实现根据子网掩码和ip计算子网功能示例

yipeiwu_com6年前PHP代码库

本文实例讲述了php和js实现根据子网掩码和ip计算子网功能。分享给大家供大家参考,具体如下:

php

<?php
$ip = '192.168.6.1';
$mask = '255.255.2.0';
$sub_net = array();//子网
$ip_explode = explode('.', $ip);
$mask_explode = explode('.', $mask);
foreach ($ip_explode as $key => $ip_num) {
  $sub_net[] = (int)$ip_num & (int)$mask_explode[$key];
}
$sub_net = implode('.', $sub_net);
echo $sub_net;

运行结果:

192.168.2.0

js

<script>
var ip = '192.168.6.1';
var mask = '255.255.255.0';
var sub_net = [];//子网
var ip_explode = ip.split('.');
var mask_explode = mask.split('.');
  console.log('ip_explode='+ip_explode);
  console.log('mask_explode='+mask_explode); for (var i = 0, num = ip_explode.length; i < num; i++) {
  c = parseInt(ip_explode[i]) & parseInt(mask_explode[i]);
  console.log('c='+c);
  sub_net.push(c);
}
sub_net = sub_net.join('.');
console.log(sub_net);
</script>

运行结果:

感兴趣的朋友可以使用在线HTML/CSS/JavaScript前端代码调试运行工具http://tools.jb51.net/code/WebCodeRun测试上述代码运行效果。

PS:这里再为大家推荐几款计算工具供大家进一步参考借鉴:

在线一元函数(方程)求解计算工具:
http://tools.jb51.net/jisuanqi/equ_jisuanqi

科学计算器在线使用_高级计算器在线计算:
http://tools.jb51.net/jisuanqi/jsqkexue

在线计算器_标准计算器:
http://tools.jb51.net/jisuanqi/jsq

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP数学运算技巧总结》、《PHP运算与运算符用法总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP数据结构与算法教程》、《php程序设计算法总结》及《php正则表达式用法总结

希望本文所述对大家PHP程序设计有所帮助。

相关文章

php5.4以上版本GBK编码下htmlspecialchars输出为空问题解决方法汇总

从旧版升级到php5.4,恐怕最麻烦的就是htmlspecialchars这个问题了!当然,htmlentities也会受影响,不过,对于中文站来说一般用htmlspecialchars...

ajax+php打造进度条代码[readyState各状态说明]

readyState == 状态(0,1,2,3,4) 0:请求未初始化,还没调用open 1:请求已经建立,但还没有发送,还没调用send 2:请求已发送,并且正在处理 3:请求正在处...

PHP下对数组进行排序的函数

经常,开发人员发现在PHP中使用这种数据结构对值或者数组元素进行排序非常有用。PHP提供了一些适合多种数组的排序函数,这些函数允许你在数组内部对元素进行排列,也允许用很多不同的方法对它们...

PHP 判断常量,变量和函数是否存在

复制代码 代码如下:if (defined('CONST_NAME')) {    //do something } 变量检测则是使用isset,注意变量未...

PHP结合Vue实现滚动底部加载效果

前言 最近的一个项目手机端分页跳转不理想,自己做了一个滚动加载的一个Demo,下面话不多说了,来一起看看详细的介绍吧。 实现思路      1....