>백엔드 개발 >PHP 튜토리얼 >php 怎么生成一个机器码

php 怎么生成一个机器码

WBOY
WBOY원래의
2016-07-06 13:54:113481검색

php 怎么生成一个机器码,一个客户端唯一的一个值,没有重复 类似mac地址,这样每台机器只能一个注册,防止刷注册

回复内容:

php 怎么生成一个机器码,一个客户端唯一的一个值,没有重复 类似mac地址,这样每台机器只能一个注册,防止刷注册

建议这个唯一识别号不要再在服务端坐。我做过的app客户端接口当中不管是对接IOS还是Android客户端都会生成一个唯一Token值给到我们服务端,我们只要接收识别就可以了。真没有必要我们来生产。如果你非要自己在服务端做唯一生成,用PHP内置函数uniqid()来生产,这个能精确到微妙够用了,你可以在自己加一些参数,希望对你有帮助

这个看具体情况,如果服务器都在一个集群,可以 服务器ip + 进程id + 时间戳

<code>base_convert(ip2long($_SERVER['REMOTE_ADDR']),10,36).'-'.getmypid().'-'.base_convert(microtime(true)*1000 - strtotime('2016-06-07 18:00:00')*1000,10,36)
</code>

特点是乱又长,同时如果有多个集群,内部ip段是一致的,就行不通,优点是各个服务器单独生成。

另外redis的自增,mysql的自增,也都可以,这些方案看起来简单,维护起来麻烦就是了,例如redis挂了,如何恢复自增字段等。

由客户端生成,随机生成一个6个字节的山寨mac地址就行了,基本上不会重复的,存在keychain中就可以了。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.