我很难将PHP中的每个元素附加到多个OneSignal标记中。这是我当前的JSON编码数组的结果:
[{"value":"email@address.com"},
{"value":"email@address.com"},
{"value":"email@address.com"}]
期望的输出:
[{"key":"user_email","relation":"=","value":"email@address.com"},
{"key":"user_email","relation":"=","value":"email@address.com"},
{"key":"user_email","relation":"=","value":"email@address.com"}]
这是我目前的PHP代码:
$jsonData = array();
$allStaffInit = mysql_query("Select * from users");
while ($staffrow = mysql_fetch_object($allStaffInit)){
$jsonData[] = $staffrow;
}
echo json_encode($jsonData);
非常感谢任何帮助!谢谢!
答案 0 :(得分:1)
尝试替换
$jsonData[] = $staffrow;
与
$object = new stdClass();
$object->key = "user_email";
$object->relation = "=";
$object->value = $staffrow->value;
$jsonData[] = $object;
我在浏览器中输入此内容,因此无法测试,但您明白了(如果您不明白,请在评论中提问:)
答案 1 :(得分:0)
如果必须使用mysql_
函数,则无需手动构造对象或数组,只需将结果集作为数组使用即可。
while ($staffrow = mysql_fetch_assoc($allStaffInit)){
$jsonData[] = $staffRow;
}
但我认真建议您至少升级到使用mysqli
扩展程序。你不必真正调整你的代码。