phpmcrypt_encrypt后json_decode结果为null
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了phpmcrypt_encrypt后json_decode结果为null,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1360字,纯文字阅读大概需要2分钟。
内容图文
![phpmcrypt_encrypt后json_decode结果为null](/upload/InfoBanner/zyjiaocheng/207/8bc71cdd1dcd41548ceaacfad897c5f4.jpg)
$key = '1234567890123456'; $iv = '1234567890123456'; $os = array( 'os' => php_uname('s'), 'time' => time(), ); $os = json_encode($os); $crypttext = base64_encode((mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, $os, MCRYPT_MODE_CBC, $iv))); $crypttext = base64_decode($crypttext); $crypttext = (mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $key, $crypttext, MCRYPT_MODE_CBC, $iv)); $crypttext = json_decode($crypttext); var_dump($crypttext);
求解
回复讨论(解决方案)
$key = '1234567890123456';$iv = '1234567890123456';$os = array( 'os' => php_uname('s'), 'time' => time(),);var_dump( $os = json_encode($os));$crypttext = base64_encode((mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, $os, MCRYPT_MODE_CBC, $iv))); $crypttext = base64_decode($crypttext); var_dump( $crypttext = (mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $key, $crypttext, MCRYPT_MODE_CBC, $iv)));echo bin2hex($crypttext), PHP_EOL;//尾部多了11个空字符$crypttext = json_decode(trim($crypttext));//删掉就对了var_dump($crypttext);
string(37) "{"os":"Windows NT","time":1428450826}"string(48) "{"os":"Windows NT","time":1428450826}"7b226f73223a2257696e646f7773204e54222c2274696d65223a313432383435303832367d0000000000000000000000object(stdClass)#1 (2) { ["os"]=> string(10) "Windows NT" ["time"]=> int(1428450826)}
原来也有解码这问题,看到跟原来不同了,一直不清楚原来是空格字符。。。
内容总结
以上是互联网集市为您收集整理的phpmcrypt_encrypt后json_decode结果为null全部内容,希望文章能够帮你解决phpmcrypt_encrypt后json_decode结果为null所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。
来源:【匿名】