博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PHP中使用了mcrypt_decrypt函数处理Json Json_decode 返回空值或者 NULL 的问题 json_last_error 3...
阅读量:6799 次
发布时间:2019-06-26

本文共 1226 字,大约阅读时间需要 4 分钟。

昨天弄了一天

function Daes($text){	$iv='1234567812345678';	$decode = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, md5($iv), base64_decode($text), MCRYPT_MODE_CBC, $iv);	return $decode;}

按理说都是正常的。但是怎么整 echo json_last_error的时候都返回3 

还以为是编码问题,搞了一晚上查手册

Descriptionstring mcrypt_decrypt ( string cipher, string key, string data, string mode [, string iv] )mcrypt_decrypt() decrypts the data and returns the unencrypted data. Cipher is one of the MCRYPT_ciphername constants of the name of the algorithm as string. Key is the key with which the data is encrypted. If it's smaller that the required keysize, it is padded with '\0'. Data is the data that will be decrypted with the given cipher and mode. If the size of the data is not n * blocksize, the data will be padded with '\0'. Mode is one of the MCRYPT_MODE_modename constants of one of "ecb", "cbc", "cfb", "ofb", "nofb" or "stream". The IV parameter is used for the initialisation in CBC, CFB, OFB modes, and in some algorithms in STREAM mode. If you do not supply an IV, while it is needed for an algorithm, the function issues a warning and uses an IV with all bytes set to '\0'.

操蛋,用'\0'填充了。

加 一行str_replace("\0","",$re);

就正常 了。日个粑粑的

  

转载于:https://www.cnblogs.com/qianlao/p/5589840.html

你可能感兴趣的文章
实验二 201521450040马霞
查看>>
C# 禁止windows程序重复运行的两种基本方法
查看>>
django 查询
查看>>
IPC——消息队列
查看>>
metamask源码学习-metamask-controller.js
查看>>
Alpha冲刺(八)
查看>>
nginx vim 单行删除与多行删除
查看>>
CentOs之文件搜索命令find
查看>>
SQL 生成可配置流水号
查看>>
JAVA 7 继承
查看>>
润乾报表分组后扩展行固定填写数据
查看>>
插入一条和上一条数据关联的数据
查看>>
(续)顺序表之单循环链表(C语言实现)
查看>>
iphone-common-codes-ccteam源代码 CCSize.m
查看>>
C# 脚本
查看>>
Intellij IDEA常用操作
查看>>
LeetCode OJ - Symmetric Tree && Same Tree
查看>>
其他内置函数
查看>>
通讯录设计
查看>>
课后作业
查看>>