加密解密 - php 对数字机密后仍为数字
PHPz
PHPz 2017-04-11 09:54:40
[PHP讨论组]

php怎么对数字加密,加密后仍为数字,类似知乎或segmentfault的url中的数字

PHPz
PHPz

学习是最好的投资!

全部回复(6)
阿神

这个urlencode严格意义上不算加密,只是编码,如空格ascii为32,对应16进制为20,所以是%20(函数会特殊转化转成+),数字字母不进行处理。
我觉得你要实现可以使用正则,循环处理字符串,除了数字不处理,其他的都分成小段使用对称加密,解密也可以实现

PHP中文网

简单的可以将数字加盐进行md5
md5($id . $salt)
取前面N位转为10进制(md5结果相当于36进制数),再截取前N位
再将上面的结果和原先的id按一定规律混淆

如果还嫌不够还可以把id也转为8进制等再进行混淆

大家讲道理

php表单数据加密一般常用password_hash()函数,你去看看文档

大家讲道理

谢谢邀请。你可以直接使用md5

echo md5(123456);
高洛峰

可以用sprintf格式化编码

伊谢尔伦

segmentfault的可不是什么加密。这是一个id生成器生成的有序id。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号