Decoder.php 742 B

12345678910111213141516171819202122232425262728293031323334353637
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Framework\Url;
  7. use Magento\Framework\UrlInterface;
  8. class Decoder implements DecoderInterface
  9. {
  10. /**
  11. * @var UrlInterface
  12. */
  13. protected $urlBuilder;
  14. /**
  15. * @param UrlInterface $urlBuilder
  16. */
  17. public function __construct(
  18. UrlInterface $urlBuilder
  19. ) {
  20. $this->urlBuilder = $urlBuilder;
  21. }
  22. /**
  23. * base64_decode() for URLs decoding
  24. *
  25. * @param string $url
  26. * @return string
  27. */
  28. public function decode($url)
  29. {
  30. $url = base64_decode(strtr($url, '-_,', '+/='));
  31. return $this->urlBuilder->sessionUrlVar($url);
  32. }
  33. }