2015-06-24 3 views
0

Я пытаюсь декодировать эту базовую кодированную строку URL-кода 64, и она продолжает возвращать пустое, почему это так?base64decode return blank

return strtr(base64_encode($url), '+/=', '-_,'); 

return base64_decode(strtr($url, '-_,', '+/=')); 

закодированы URL это aHR0cDovL3Rlc3QuZ3J5cGhvbnRlYS5jb20vbWFnZW50by9zdG9yZS5odG1s

+1

Просто заставьте ваш strtr в декоде бесполезно. Попробуйте просто: return base64_decode ($ url); – kaldoran

ответ

2

Просто привести свой strtr в декодированием бесполезно. Попробуйте просто:

return base64_decode($url); 

ваш URL был:

http://test.gryphontea.com/magento/store.html

Это должно сделать работу.

base64_decode(strtr($url, '-_,', '+/=')); 

С strstr вы пытаетесь перейти к подстроке «-_», и в закодированном URL там нет такой части. Затем вы пытаетесь использовать base64_decode, поскольку strstr «fail» возвращает «". то у вас есть:

base64_decode(""); 
+0

Я пробовал несколько раз, используя без strtr(), он по-прежнему возвращает пустое .. Есть ли какое-то требование использовать этот base64_decode? – zaw

+0

@zaw Вы должны делать что-то еще. Попробуйте вызвать 'var_dump' по результатам вызова' base64_decode'. – Jim

+0

это сервер, связанный вещь ?? даже это только показывает «тест» .... zaw

1

Может конвертировать $ URL первый в $ вар, сделать ваши преобразования, а затем возвращает строку, но я не уверен, ваше преобразование strtr правильно.

Смежные вопросы