php json_encode 数组输出\错误
Posted
技术标签:
【中文标题】php json_encode 数组输出\\错误【英文标题】:Php json_encode Array output \ errorphp json_encode 数组输出\错误 【发布时间】:2016-06-09 13:26:21 【问题描述】:您好,我有带有输出 json 编码的 php mysql pdo 数组,并在输出中给我\\\
字符,我想delete
他们。
我的php代码
$stmt2 = $this->conn->prepare("SELECT ID,clientName FROM Clients WHERE userID='$userID' OR mainAccountID='$mainAccountID' ORDER BY ID DESC");
$stmt2->execute();
$result = $stmt2 -> fetchAll();
foreach( $result as $userRow2 )
$private_list[] = '"name":"'.$userRow2['clientName'].'","ID":"'.$userRow2['ID'].'"';
echo json_encode($private_list);
并给出输出
["\"name\":\"zz\",\"ID\":\"312\"","\"name\":\"jv\",\"ID\":\"311\"","\"name\":\"fff2222\",\"ID\":\"309\"","\"name\":\"ffff\",\"ID\":\"308\"","\"name\":\"v\",\"ID\":\"288\"","\"name\":\"t\",\"ID\":\"286\"","\"name\":\"s\",\"ID\":\"285\"","\"name\":\"r\",\"ID\":\"284\"","\"name\":\"p\",\"ID\":\"283\"","\"name\":\"o\",\"ID\":\"282\"","\"name\":\"n\",\"ID\":\"281\"","\"name\":\"m\",\"ID\":\"280\"","\"name\":\"l\",\"ID\":\"279\"","\"name\":\"k\",\"ID\":\"278\"","\"name\":\"j\",\"ID\":\"277\"","\"name\":\"i\",\"ID\":\"276\"","\"name\":\"h\",\"ID\":\"275\"","\"name\":\"g\",\"ID\":\"274\"","\"name\":\"f\",\"ID\":\"273\"","\"name\":\"e\",\"ID\":\"272\"","\"name\":\"d\",\"ID\":\"271\"","\"name\":\"c\",\"ID\":\"270\"","\"name\":\"b\",\"ID\":\"269\"","\"name\":\"a\",\"ID\":\"268\""]
我想删除 \
字符。
谢谢
【问题讨论】:
这实际上是一个有效的 javascript 字符串,因为,...等等什么? @PraveenKumar 我将为 swift 应用程序使用输出,并且在有时不取值会给出错误 \ 您不能对 JSON 数组进行 JSON 编码...大声笑。 @PraveenKumar 通常 json 输出有效但有 \ 字符并在 swift 上给出 你要么手工拼凑 JSON,要么 使用json_encode
为你做这些; both 会导致垃圾。
【参考方案1】:
更改您的代码以包含一个表单。您正在混合 JavaScript 和 PHP。所以,这样做:
$private_list = array();
$private_list[] = array(
"name" => $userRow2['clientName'],
"ID" => $userRow2['ID']
);
【讨论】:
@SwiftDeveloper 享受!:)
你可以删除$private_list = array();
愚蠢的声明!大声笑。以上是关于php json_encode 数组输出\错误的主要内容,如果未能解决你的问题,请参考以下文章
php解决json_encode输出GB2312中文问题 (数组)
PHP json_encode($arr) 为啥会改变数组的顺序,怎么解决。在线等