我在iPhone上与iPhone开发人员一起编写Web服务。我的iPhone联合开发人员总是抱怨我将数据发送为null而不是" null"。
让我详细解释一下这个场景。
$cdata_provider = new CSqlDataProvider("Users");
echo CJSON::encode($cdata_provider->data);
输出
{
"users": [
{
"firstname":"Mike",
"lastname":null
},
{
"firstname":"Steve",
"lastname":null
}
]
}
我的数据还可以。但是当它接收数据为空时,iphone应用程序崩溃了。 iphone开发人员说,如果我发送" null" (带双引号)而不是null(不带双引号。
所需的输出为:
{
"users": [
{
"firstname":"Mike",
"lastname":"null"
},
{
"firstname":"Steve",
"lastname":"null"
}
]
}
我能完成这个吗?我需要配置什么吗?我做了很多谷歌,但没有解决这个问题。
答案 0 :(得分:0)
使用str_replace()
完成此操作
echo str_replace("null",'"null"',CJSON::encode($cdata_provider->data));
答案 1 :(得分:0)
尝试将null
替换为查询
$cdata_provider = new CSqlDataProvider("select firstname,replace(lastname,'null','MyWord') as lastname from YourUserTable");
echo CJSON::encode($cdata_provider->data);
输出将
{
"users":
[
{
"firstname":"Mike",
"lastname":"MyWord"
},
{
"firstname":"Steve",
"lastname":"MyWord"
}
]
}