Почему \ r \ n появляется, когда я JSON кодирую массив - PullRequest
2 голосов
/ 01 апреля 2020

Я создаю несколько массивов и превращаю их в JSON строки, и я заметил кое-что странное - некоторые строки, когда я JSON кодирую их, добавляются \ r \ n на фронт и конец из строк. Строки, которые я кодирую, взяты из HTML элементов.

$arr = array(
    'licStat' => $rows2[13]->nodeValue, 
    'expDate' => dateReplace($data[5]->nodeValue), 
    'dicAct' => $rows2[11]->nodeValue
);
echo json_encode($arr);

Ожидаемый результат:

{"licStat":"Expired","expDate":"1999-12-20","dicAct":"Yes"}

Фактический результат:

{"licStat":"\r\n Expired\r\n ","expDate":"1999-12-20","dicAct":"\r\n Yes\r\n "}

1 Ответ

3 голосов
/ 01 апреля 2020

Кажется, $rows2[13]->nodeValue и $rows2[11]->nodeValue имеют возврат переноса и перевод строки.

Вы можете использовать trim (), чтобы избавиться от них:

$arr = array(
    'licStat' => trim($rows2[13]->nodeValue), 
    'expDate' => dateReplace($data[5]->nodeValue), 
    'dicAct' => trim($rows2[11]->nodeValue)
);
echo json_encode($arr);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...