php 分库分表hash算法

yipeiwu_com6年前PHP代码库
复制代码 代码如下:

//分库分表算法
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;
}

相关文章

使用PHP反射机制来构造"CREATE TABLE"的sql语句

反射是指在PHP运行状态中,扩展分析PHP程序,导出或提取出关于类、方法、属性、参数等的详细信息,包括注释。这种动态获取的信息以及动态调用对象的方法的功能称为反射API。反射是操纵面向对...

PHP设计模式之注册树模式分析

本文实例讲述了PHP注册树模式。分享给大家供大家参考,具体如下: 什么是注册树模式? 注册树模式当然也叫注册模式,注册器模式。之所以我在这里矫情一下它的名称,是因为我感觉注册树这个名称更...

PHP内部实现打乱字符串顺序函数str_shuffle的方法

PHP内部实现打乱字符串顺序函数str_shuffle的方法

前言 2019年春节已过,今天是上班第一天,还得翻一翻之前没有看完的PHP源码。 今天聊的是字符串顺序打乱函数str_shuffle。这个函数本身使用频率并不高。但是,其内部实现还是非常...

PHP的PDO常用类库实例分析

本文实例讲述了PHP的PDO常用类库。分享给大家供大家参考,具体如下: 1、Db.class.php 连接数据库 <?php // 连接数据库 class Db {...

php intval函数用法总结

语法: int intval ( $var, $base ) 参数: 此函数接受两个参数,其中一个是必需的,而另一个是可选的。 参数如下所述: $var:这是一个必需参数,用作需要...