算命测人品应用的实现分析
贴文中经常被一些测品行或是测天蝎座相匹配的撷取相连所贴文,究其原因核心理念同时实现,只不过都是相近的演算法,那时周日,科泽县,本猿把曾徐鼎做的两个卜卦社会公众号拿出来探究一番。
本文只预测其演算法的同时实现,不讲社会公众号的开发设计、也不会涉及社会公众号的运营相关,如果你对这些钟爱可以回帖告诉本猿,本猿也很乐于和我们展开交流撷取。
一、单纯模拟
嘿嘿,先透过模拟单纯的了解一下这是两个什么样的卜卦的社会公众号,此社会公众号名称为“WIKI命算”,很天心的两个名字,关注他后,如下表所示截屏:
有两种功能,卜卦和2016圣诞节签,测试分别如下表所示两图:
二、方案路子
首先要明确的一点是,本社会公众号估算结论实为影视娱乐,如有非常类似,普伊隆。
本应用领域只不过有两个潜在的基本要求,如果做好这点就ok了,一是要保证使用者多次输出相同的文本时要得到同样的估算结论,二是估算文本尽可能丰富,不同的使用者输出得出结论的估算结论的重复率要尽量低。
他们先来说 *** 点,假如他们复本有1w条估算结论,对于使用者输出的两条文本,他们怎么去找到两条相关联的估算结论呢,大体路子是先把使用者输出转成1~10000范围的位数,接着依照位数找寻相关联序号的估算文本。
数组转成位数的演算法只不过有许多 *** ,这儿给出一类同时实现:
/**
* 依照name以获取两个乱数值
**/
function randomByName($name, $salt=sscm) {
$hex = md5($name.$salt);
$hexLen = strlen($hex);
$subHexLen = $hexLen / 8;
$output = array();
// 把32位16十进制字符串转成4份,每月得出结论两个小于16的8平方根的位数
for ($i = 0; $i < $subHexLen; $i++) {
$subHex = substr ($hex, $i * 8, 8);
$int = 1 * (0x.$subHex); // 转成10十进制
$output[] = $int;
}
$index = rand(0, 3); // 再展开一次乱数
return $output[$index];
}
2. *** 点关于估算文本,当然可以挖空心思的去想去人工编辑,但是这太僵硬了。即使类似于卜卦和圣诞节签的网站或是app已经许多了,他们间接把它们的文本截取过来使用就行了,即使这种应用领域的性质本来就是影视娱乐,因此没关系和其它应用领域文本重复,我们只不过拼的是推广。
本猿下载了n多个类似于app,接着逐一的展开Tourbe,只不过app的统计数据以获取无非于三种情况,一类是间接安装时候存在本地,第三种是间接用h5显示,第三种就是透过api动态Dustbot。即使本猿是后端phper,因此对第三种是最熟悉的,于是从这些app中找寻透过apiDustbot的app,接着模拟大量初始化得出结论其所有统计数据,再存入复本就ok了。
三、小结
本文只是单纯的描述一下关于卜卦测运势等应用领域的同时实现路子,其中也有许多细节的技术知识没有展开详细的描述,如果你有兴趣的话可以回帖给本猿,本猿很乐于毫无保留的撷取所有代码。