当前位置: 首页 > 图文教程 > 网络编程 > PHP > php 分库分表hash算法

PHP
PHP动态网页技术中SESSION的应用
PHP和MySQL操作应该注意的一些细节
理解学习PHP编码规范之注释和文件结构
PHP网站开发过程中注意这些安全知识
利用PHP自定义错误处理器处理出错信息
用PHP程序计算时间差的几种方法
PHP关于中文汉字替换与模式匹配的问题
PHP中的一些常识:类篇
PHP程序员一般都忽略了的几点精华
PHP4之COOKIE支持详解
用新PHP插件实现MySQL为基础的事务
如何利用PHP操纵Oracle LOB类型数据
PHP5 OOP编程之代理与定制异常(1)
PHP5 OOP编程之代理与定制异常(2)
用PHP编程语言开发动态WAP页面
PHP 编码规范-注释
用PHP正则表达式清除字符串的空白
PHP应用技巧:如何将代码中的通知和警告删除
PHP入门进阶学习必备的知识及工具
用PHP编程语言开发动态WAP页

PHP 中的 php 分库分表hash算法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 186 ::
收藏到网摘: n/a

分享一个分库分表hash算法,需要的朋友可以参考下。
复制代码 代码如下:

//分库分表算法
function calc_hash_db($u, $s = 4)
{
$h = sprintf("%u", crc32($u));
$h1 = intval(fmod($h, $s));
return $h1;
}

for($i=1;$i<100;$i++)
{
echo calc_hash_db($i);
echo "<br>";
}
function calc_hash_tbl($u, $n = 256, $m = 16)
{
$h = sprintf("%u", crc32($u));
$h1 = intval($h / $n);
$h2 = $h1 % $n;
$h3 = base_convert($h2, 10, $m);
$h4 = sprintf("%02s", $h3);
return $h4;
}