在 php 中包含一个用于 json 编码的循环

include a loop in php for json encode

我的 JSON 代码有问题。我想附和这个:

[{"post_title":"hospital-name","term_taxonomy_id":"15,16,20"}, 
{"post_title":"hospital-name","term_taxonomy_id":"15,16,20"} ]  

我编码了这个:

$stmt->execute();
$myarr = array();
while ($data = $stmt->fetch()) {
    $myarr[] = array(
        'post_title' => $data['post_title'],
        'term_taxonomy_id' => $data['term_taxonomy_id'], 
    );
}
echo json_encode($myarr, JSON_UNESCAPED_UNICODE);

但最后表明:

[
    {"id":"120","post_title":"hospital-name"},
    {"id":"120","post_title":"hospital-name"},
    {"id":"120","post_title":"hospital-name"},
    {"id":"120","post_title":"hospital-name"},
    {"id":"120","post_title":"hospital-name"},
    {"id":"120","post_title":"hospital-name"},
    {"id":"120","post_title":"hospital-name"},
    {"id":"120","post_title":"hospital-name"},
    {"id":"120","post_title":"hospital-name"},
    {"id":"120","post_title":"hospital-name"},
    {"id":"120","post_title":"hospital-name"},
    {"id":"120","post_title":"hospital-name"},
    {"id":"120","post_title":"hospital-name"},
    {"id":"120","post_title":"hospital-name"},
    {"id":"120","post_title":"hospital-name"},
    {"id":"120","post_title":"hospital-name"},
    {"id":"125","post_title":"hospital-name-2"},
    {"id":"125","post_title":"hospital-name-2"},
    {"id":"125","post_title":"hospital-name-2"},
    {"id":"125","post_title":"hospital-name-2"},
    {"id":"125","post_title":"hospital-name-2"},
    {"id":"125","post_title":"hospital-name-2"},
    {"id":"125","post_title":"hospital-name-2"}
]

请帮我解决这个问题。 事实上我的循环有问题。

我希望你能在一个字符串中得到一个医院的所有 term_taxonomy_id,以逗号分隔。

像下面一样:-

$myarr = array();   
while ($data = $stmt->fetch_assoc()) {
    $myarr[$data['post_title']] = array(
        'post_title' => $data['post_title'],
        'term_taxonomy_id' => isset($myarr[$data['post_title']]['term_taxonomy_id']) ? $myarr[$data['post_title']]['term_taxonomy_id'].','.$data['term_taxonomy_id'] : $data['term_taxonomy_id']
    );
}
echo json_encode(array_values($myarr), JSON_UNESCAPED_UNICODE);

一个硬编码的例子:- https://eval.in/1051696

参考:- array_values()