Data.php 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Framework\Json\Helper;
  7. /**
  8. * Json data helper
  9. *
  10. * @deprecated 101.0.0 @see \Magento\Framework\Serialize\Serializer\Json
  11. */
  12. class Data extends \Magento\Framework\App\Helper\AbstractHelper
  13. {
  14. /**
  15. * @var \Magento\Framework\Json\DecoderInterface
  16. */
  17. protected $jsonDecoder;
  18. /**
  19. * @var \Magento\Framework\Json\EncoderInterface
  20. */
  21. protected $jsonEncoder;
  22. /**
  23. * @param \Magento\Framework\App\Helper\Context $context
  24. * @param \Magento\Framework\Json\DecoderInterface $jsonDecoder
  25. * @param \Magento\Framework\Json\EncoderInterface $jsonEncoder
  26. */
  27. public function __construct(
  28. \Magento\Framework\App\Helper\Context $context,
  29. \Magento\Framework\Json\DecoderInterface $jsonDecoder,
  30. \Magento\Framework\Json\EncoderInterface $jsonEncoder
  31. ) {
  32. parent::__construct($context);
  33. $this->jsonDecoder = $jsonDecoder;
  34. $this->jsonEncoder = $jsonEncoder;
  35. }
  36. /**
  37. * Encode the mixed $valueToEncode into the JSON format
  38. *
  39. * @param mixed $valueToEncode
  40. * @return string
  41. */
  42. public function jsonEncode($valueToEncode)
  43. {
  44. return $this->jsonEncoder->encode($valueToEncode);
  45. }
  46. /**
  47. * Decodes the given $encodedValue string which is
  48. * encoded in the JSON format
  49. *
  50. * @param string $encodedValue
  51. * @return mixed
  52. */
  53. public function jsonDecode($encodedValue)
  54. {
  55. return $this->jsonDecoder->decode($encodedValue);
  56. }
  57. }