json_encode () проблема и сохранение в проблеме cookie в PHP - PullRequest
0 голосов
/ 21 сентября 2018

Когда я конвертирую json_encode;Это преобразовывает это в правильном формате, но когда я сохраняю это в куки;формат меняется.Я хочу сохранить в cookie как есть.

JSON STRING:

{
"ID": "0",
  "basicAddress": {
    "ID": "0",
    "Line1": "327 S Main St",
    "Line2": "",
    "Line3": "",
    "City": "Fitzgerald",
    "ZipCode": "31750",
    "StateProv": "",
    "Country": "",
    "stateProv": "GA"
  },
  "Name": "",
  "Latitude": "31.7114886",
  "Longitude": "-83.25471970000001",
  "IsPreferred": "false"
}

ПОСЛЕ ХРАНЕНИЯ В COOKIE:

%7B%22ID%22%3A%220%22%2C%22basicAddress%22%3A%7B%22ID%22%3A%220%22%2C%22Line1%22%3A%22327+S+Main+St%22%2C%22Line2%22%3A%22%22%2C%22Line3%22%3A%22%22%2C%22City%22%3A%22Fitzgerald%22%2C%22ZipCode%22%3A%2231750%22%2C%22StateProv%22%3A%22%22%2C%22Country%22%3A%22%22%2C%22stateProv%22%3A%22GA%22%7D%2C%22Name%22%3A%22%22%2C%22Latitude%22%3A%2231.7114886%22%2C%22Longitude%22%3A%22-83.25471970000001%22%2C%22IsPreferred%22%3A%22false%22%7D

enter image description here

Ответы [ 2 ]

0 голосов
/ 05 октября 2018

Я нашел решение, и оно работает абсолютно правильно, как я хочу

$address={
"ID": "0",
  "basicAddress": {
    "ID": "0",
    "Line1": "327 S Main St",
    "Line2": "",
    "Line3": "",
    "City": "Fitzgerald",
    "ZipCode": "31750",
    "StateProv": "",
    "Country": "",
    "stateProv": "GA"
  },
  "Name": "",
  "Latitude": "31.7114886",
  "Longitude": "-83.25471970000001",
  "IsPreferred": "false"
};
cookie_expire_time=30000;
header("Set-Cookie: address=$address; Domain=.example.com;Path=/; Max-Age=".cookie_expire_time.";");
0 голосов
/ 21 сентября 2018

Правильное поведение для setcookie для URL-кодирования значения.Вы можете использовать setrawcookie, чтобы избежать этого автоматического кодирования, но тогда вам нужно убедиться, что ваши куки правильно сформированы, чтобы быть HTTP-совместимыми.

...