Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/287.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中为url编码数组_Php_Json_Encoding_Base64_Ascii85 - Fatal编程技术网

在PHP中为url编码数组

在PHP中为url编码数组,php,json,encoding,base64,ascii85,Php,Json,Encoding,Base64,Ascii85,我一直在做一些二维码,我需要传递一个数组到二维码的数据,但它需要编码。数据本身是一个用于生成PDF的json_数组 如果我使用base64编码,QR码会非常大,而当使用ascii85时,它会破坏QR码 你能让我知道在url、缩写和better的编码中有哪些编码方法可以使用吗。qr_generator.php?data={encoded_json_array}您可以尝试以下方法: urlencode($string) 它对要作为url参数追加的字符串进行编码。因此,如果您有一个数组,请尝试: ur

我一直在做一些二维码,我需要传递一个数组到二维码的数据,但它需要编码。数据本身是一个用于生成PDF的
json_数组

如果我使用
base64
编码,QR码会非常大,而当使用
ascii85
时,它会破坏QR码

你能让我知道在url、缩写和
better的编码中有哪些编码方法可以使用吗。qr_generator.php?data={encoded_json_array}

您可以尝试以下方法:

urlencode($string)

它对要作为url参数追加的字符串进行编码。因此,如果您有一个数组,请尝试:


urlencode(json_encode($array)

尝试将其转换为php数组,并使用
序列化
已尝试过该方法。Base64是迄今为止最好的方法,但其大小过大。与Base64具有相同的效果,字符串太大。除非您接受url中的所有unicode字符,否则无法真正将字符串编码为更小的大小(出于安全原因,您不需要)。您还可以将信息与随机密钥一起存储在会话中,并将该密钥放入url中