当我对数组进行JSON编码时为什么出现\ r \ n

问题描述 投票:0回答:1

我正在创建一些数组并将它们转换为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 "}
php json dom
1个回答
-1
投票

似乎$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);
© www.soinside.com 2019 - 2024. All rights reserved.