PHP函数:将数组编码为JSON格式而无需大括号

时间:2019-03-04 13:10:12

标签: php json

如何在不获取左括号{并以右括号}结尾的情况下将数组编码为JSON格式。

当我使用下面的函数时,出现错误:

  

JSONException:无法将类型为java.lang.String的值转换为JSONObject

在我的Android应用中。因此我无法从数据库中获取列表视图。

public function View()
{
    $con=$this->connect();
    if($con != null)
    {
        $result=$con->query(Constants::$SQL_SELECT_ALL);
        if($result->num_rows > 0)
        {
            $items_list=array();
            while($row=$result->fetch_array())
            {
                array_push($items_list, array("id"=>$row['id'],"item_name"=>$row['item_name'],"item_description"=>$row['item_description'],"item_image_url"=>$row['item_image_url']));
            }
            print(json_encode(array_reverse($items_list)));
        }else
        {
        }
        $con->close();

    }else{
        print(json_encode(array("PHP EXCEPTION : CAN'T CONNECT TO MYSQL. NULL CONNECTION.")));
    }
}
public function handleRequest() {
    if (isset($_POST['name'])) {
        $this->insert();
    } else{
        $this->select();
    }
}
}

任何想法我该怎么做?

1 个答案:

答案 0 :(得分:1)

您可以使用ltrim,进行检查并查看是否适合您:)

ltrim —从字符串的开头去除空格(或其他字符),更多信息here

$array = array('id' => 123, 'item_name' => 'Some example', 'item_description' => 'Another example');

$json =  json_encode($array);

echo ltrim($json, '{');

结果字符串为

"id":123,"item_name":"Some example","item_description":"Another example"}