在从MySQL添加之前,向PHP数组添加对象选择

在从MySQL添加之前,向PHP数组添加对象选择,php,arrays,json,Php,Arrays,Json,我有一个PHP页面,将MySQL select编码为JSON。 我想添加一个状态值作为数组的第一个对象。 PHP代码 } 这一结果是: { "TEXT_KEY" = "USER_FAILED"; "TEXT_VALUE" = "UNKNOWN USER"; } 我想添加第一个对象手册,使结果如下所示: { "STATUS" = "1"; "TEXT_KEY" = "USER_FAILED"; "TEXT_VALUE" = "UNKNOWN USER";

我有一个PHP页面,将MySQL select编码为JSON。 我想添加一个状态值作为数组的第一个对象。 PHP代码

}

这一结果是:

{
"TEXT_KEY" = "USER_FAILED";
"TEXT_VALUE" = "UNKNOWN USER";
}

我想添加第一个对象手册,使结果如下所示:

        {
    "STATUS" = "1";
    "TEXT_KEY" = "USER_FAILED";
    "TEXT_VALUE" = "UNKNOWN USER";
}
我该怎么做

我尝试过这种方法,但不知何故有一个错误

{
    //CREATE USER UNKNOWN ARRAY RESULT
    $Statusresult = mysql_query("SELECT TEXT_KEY, TEXT_VALUE FROM T_TEXTS WHERE TEXT_KEY = 'USER_FAILED' ") or die(mysql_error());
    $Statusrows = array();
    $Statusrows = { "STATUS" => "1" };
    while($s = mysql_fetch_assoc($Statusresult)) 
    {
    //  $Statusrows[] = $s;
        array_push($Statusrows, $s);    
    }
    print json_encode($Statusrows);
}
在其上添加虚拟列

您可以使用:

或:

这将使您无需处理SQL内部的逻辑。

请尝试以下操作:

$Statusrows = array();
while($s = mysql_fetch_assoc($Statusresult)) 
{
    $s["STATUS"] = "1";
    $Statusrows[] = $s;
}

我试过了,但结果有点不同…在SQL之前缺少大约1和STATUS添加零元素正是我的方法-我只是不确定如何做到这一点我尝试了一些解决方案,但没有任何运气…@UlrikVadstrup选择“1”作为状态。。。请参阅我的更新答案。hmnn…在资源管理器中查看时,它看起来会找到[{STATUS:1,TEXT\u KEY:USER\u FAILED,TEXT\u VALUE:UNKNOWN USER}],但在Xcode中解码时,第一个对象周围的文件…{STATUS=1;TEXT\u KEY=USER\u FAILED;TEXT\u VALUE=UNKNOWN USER;}发现问题-xcode编码错误-万分感谢John Woo:-看看我的答案
SELECT '"1"' AS `STATUS`, TEXT_KEY, TEXT_VALUE 
FROM T_TEXTS 
WHERE TEXT_KEY = 'USER_FAILED'
$Statusrows[] = ["STATUS" => "1"] + $s;
$status1 = ["STATUS" => "1"];
while ($s = mysql_fetch_assoc($Statusresult)) 
{
    $Statusrows[] = $status1 + $s;
}
$Statusrows = array();
while($s = mysql_fetch_assoc($Statusresult)) 
{
    $s["STATUS"] = "1";
    $Statusrows[] = $s;
}