我正在运行一个简单的Zend_Json :: encode($ data)命令,然后将其添加到一个数组中,然后将其发送给第三方网站进行处理。
我记录了发送到其他站点的请求数据,除了我编码的数据外,一切看起来都不错。它似乎正在使用& QUOT;而不是实际的双引号。
举个例子,我的$ data是一个包含以下数据的简单关联数组
$data['user_id'] = 5
$data['email'] = 'john@email.com'
我创建了一个编码数据数组以及第三方需要的额外ID,所以我这样做了。
$sendParams = array(
'userData' => Zend_Json::encode($data),
'tokenId' => '4403-3493-22'
);
然后我将其转换为XML并将其发送给他们。在我的日志中,我发送的请求看起来像这样。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Request action="EvaluateUser">
<ParameterList>
<userData>
{"user_id":"5"e;,"e;email"e;:"e;john@gmail.com"e;}
</userData>
</ParameterList>
</Request>
正如您所看到的,它没有使用实际的引号。
我似乎无法弄清楚如何将其转换为常规双引号。我已经尝试过str_replace但这似乎根本不会影响xml请求。
谢谢!