下面代码的用意是从mysql表中提取消息,并将每个消息放在每个输出周围带有{}的一个数组中。如您所见,每个输出都由各种参数组成,并且本身就是一个数组。 代码的作用是每次处理循环时,在后面的JSON数组中将其转换为,它将输出包装在[]中,因此它现在是一个新创建的数组。 我得到的是:如何将元素添加到php数组而不显示为新数组
[{"sender":"ll","message":"blah","timestamp":"2016-12-21 14:43:04","username":"","msgtype":"","threadid":"32629016712222016034323"},{"sender":"kk","message":"blahblah","timestamp":"2016-12-21 14:43:23","username":"","msgtype":"","threadid":"32629016712222016034323"},{"sender":"ll","message":"blahblahblah","timestamp":"2016-12-21 14:43:47","username":"","msgtype":"","threadid":"32629016712222016034323"}],[{"sender":"ll","message":"blahblahblahblah","timestamp":"2016-12-21 14:43:04","username":"","msgtype":"","threadid":"92337321312222016034304"},{"sender":"kk","message":"blahblahblahblahblah","timestamp":"2016-12-21 14:44:05","username":"","msgtype":"","threadid":"92337321312222016034304"}]]
而我想要的是:
[{"sender":"ll","message":"blah","timestamp":"2016-12-21 14:43:04","username":"","msgtype":"","threadid":"32629016712222016034323"},{"sender":"kk","message":"blahblah","timestamp":"2016-12-21 14:43:23","username":"","msgtype":"","threadid":"32629016712222016034323"},{"sender":"ll","message":"blahblahblah","timestamp":"2016-12-21 14:43:47","username":"","msgtype":"","threadid":"32629016712222016034323"}],{"sender":"ll","message":"blahblahblahblah","timestamp":"2016-12-21 14:43:04","username":"","msgtype":"","threadid":"92337321312222016034304"},{"sender":"kk","message":"blahblahblahblahblah","timestamp":"2016-12-21 14:44:05","username":"","msgtype":"","threadid":"92337321312222016034304"}]
如何继续在这里得到正确的结果呢?
$data = array();
foreach($threads as $threadid){
$sql = ("SELECT sender,message,timestamp,username,msgtype,threadid FROM Messages WHERE threadid = '$threadid' AND subject = '' AND timestamp > '$newtimestamp' ORDER BY timestamp");
$arrayOfObjects = $conn->query($sql)->fetchAll(PDO::FETCH_OBJ);
$data[] = $$arrayOfObjects;
}
,仅供参考,$线程ID是一个包含另一个数组...线程ID,并且循环正确获取这些一个接一个,that's问题并不在那里。
在此先感谢!
* ...并将它们中的每一个放在每个输出周围的一个数组中{},您是否试图获取json字符串? –
你能指定你的意思吗?“在每个输出周围用{}排列一个阵列”_?你在哪里/如何看待这些括号?作为Json也许?由于{}表示一个对象,而不是一个数组,所以你想要的东西有点混乱。 – Jeff
您需要在foreach之外定义空数组var,并将数组内容推送到foreach中。 – Eugen