Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php base64_编码不带=符号_Php_Base64 - Fatal编程技术网

php base64_编码不带=符号

php base64_编码不带=符号,php,base64,Php,Base64,我正在使用base64_encode函数来散列字符串。字符串必须是a-zA-Z0-9,有时base64_encode在末尾输出=符号(有时两次) 更改base64_encode函数(覆盖?)以省略=符号的最有效方法是什么?如果以后要解码该值,则结尾可能的=是必需的。此外,字符集a-zA-Z0-9只有62个值,因此基本编码值永远无法放入其中 更新:如果需要散列字符串,为什么不使用散列函数md5应该是一个很好的解决方案,除非应用程序是安全敏感的,在这种情况下,应该使用更强的散列(sha1或更好)。如

我正在使用base64_encode函数来散列字符串。字符串必须是a-zA-Z0-9,有时base64_encode在末尾输出=符号(有时两次)


更改base64_encode函数(覆盖?)以省略=符号的最有效方法是什么?

如果以后要解码该值,则结尾可能的
=
必需的。此外,字符集
a-zA-Z0-9
只有62个值,因此基本编码值永远无法放入其中


更新:如果需要散列字符串,为什么不使用散列函数
md5
应该是一个很好的解决方案,除非应用程序是安全敏感的,在这种情况下,应该使用更强的散列(
sha1
或更好)。如果以后要解码该值,则可能需要结尾处的
=
s。此外,字符集
a-zA-Z0-9
只有62个值,因此基本编码值永远无法放入其中


更新:如果需要散列字符串,为什么不使用散列函数
md5
应该是一个很好的解决方案,除非应用程序是安全敏感的,在这种情况下,应该使用更强的散列(
sha1
或更好)。正如Jon所说,您需要
=
稍后对其进行解码,但根据您所说的,您不需要这样做,在这种情况下,您最好使用
md5
,这将为您提供一个32个字符的a-F/0-9字符串。

正如Jon所说,您需要
=
稍后对其进行解码,但根据您所说的,您不需要这样做,在这种情况下,您最好改用
md5
,这将为您提供一个32个字符的a-F/0-9字符串。

此外:我的程序不需要将字符串解码回原始格式。您为什么要对不想再次解码的内容进行编码?也许哈希函数(如
md5
sha1
)更适合这里。那么,也许您需要一些哈希函数来代替?此外:我的程序不需要将字符串解码回原始格式为什么您要
base64
-对不想再次解码的内容进行编码?也许一个散列函数(比如
md5
sha1
)在这里可能更合适。那么也许你需要一些散列函数来代替?我只是在一个注释中添加了这个。我知道有人会指出:)@Tom:你还需要解释另外两个字符(我相信使用了
/
+
)。如果要破坏其输出,为什么要使用
base64_encode
?也许其他工具更适合这项任务?你到底想做什么?@Tom:然后使用散列函数:)我刚刚在评论中加了这个。我知道有人会指出:)@Tom:你还需要解释另外两个字符(我相信使用了
/
+
)。如果要破坏其输出,为什么要使用
base64_encode
?也许其他工具更适合这项任务?你到底想做什么?@Tom:那就用散列函数:)