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程序设计有所帮助。

相关文章

PHP中for与foreach的区别分析

注意: 除非数组是被引用,foreach 所操作的是指定数组的一个拷贝,而不是该数组本身。因此数组指针不会被 each() 结构改变,对返回的数组单元的修改也不会影响原数组。 1. 自p...

php的access操作类

复制代码 代码如下:<?php     --------------------------------------------------...

PHP实现数组array转换成xml的方法

本文实例讲述了PHP实现数组array转换成xml的方法。分享给大家供大家参考,具体如下: <?php $elementLevel = 0 ; function arr...

php中防止伪造跨站请求的小招式

伪造跨站请求介绍   伪造跨站请求比较难以防范,而且危害巨大,攻击者可以通过这种方式恶作剧,发spam信息,删除数据等等。这种攻击常见的表现形式有:   伪造链接,引诱用户点击,或是让用...

php提示undefined index的几种解决方法

php提示undefined index的几种解决方法

平时用$_post[''],$_get['']获取表单中参数时会出现Notice: Undefined index: --------; 我们经常接收表单POST过来的数据时报Undef...