2014-12-16 5 views
1

일부 QR 코드를 작업하고 있는데 데이터가있는 QR에 배열을 전달해야하지만 인코딩이 필요합니다. 데이터 자체는 json_array이며 PDF를 생성하는 데 사용됩니다.PHP에서 URL을위한 배열 인코딩

base64 인코딩을 사용하면 QR 코드가 어리석게 커지고 ascii85을 사용하면 QR이 깨집니다.

당신이 날은 URL에서 작동하는 어떤 인코딩 praticies으로 알려 주시기 수 있으며,이 쇼트 코딩 betetr. qr_generator.php?data={encoded_json_array}

+0

는 PHP 배열에 그 변환과'serialize' –

+0

를 사용하려고 이미 방법 것을 시도했다. Base64는 지금까지는 최고이지만 크기는 오버. –

답변

1

이 작업을 시도 할 수 있습니다 :

urlencode($string);

그것은이 될 수있는 문자열을 인코딩 url 매개 변수로 추가됩니다. 당신은 배열을한다면, 시도 :

urlencode(json_encode($array);

+0

base64와 같은 효과가 있습니다. 문자열이 너무 큽니다. –

+0

URL에있는 모든 유니 코드 문자 (보안상의 이유로 원하지 않는)를 수락하지 않으면 실제로는 문자열의 크기를 훨씬 더 작게 인코딩 할 수 없습니다. 임의의 키와 함께 세션에 정보를 저장하고 해당 키를 URL에 넣을 수도 있습니다 –