jsonencode添加一个空行,为什么?

时间:2016-05-31 09:36:13

标签: php json android-studio

我在发帖前做了很长时间的搜索,没有一个解决方案适合我。 我正在使用JSON和PHP创建一个Android应用程序;

PHP

/**
*
LOT OF USELESS THING
*
*/
//Attributing values of $OUTPUT

$q=mysql_query($query);

if (!$q) 
   die(mysql_error()); // You'll be notified if there's any syntax error in your query.  

$OUTPUT = array(array());           
if ($q && @mysql_num_rows($q) > 0) {
    // looping through all results
    // products node

    while($e=@mysql_fetch_assoc($q)){
        if (!empty($e['title'])){
        $u = Array();
        $u['id'] = mb_convert_encoding($e['id'], 'UTF-8');
        $u['title'] = mb_convert_encoding($e['title'], 'UTF-8');
        $u['location_search_text'] =  mb_convert_encoding($e['location_search_text'], 'UTF-8');
        $OUTPUT[] = $u;}
        //echo "<br>************<br>";*/

            //$OUTPUT[] = $e;
    }
}
print(json_encode($OUTPUT));

现在,这是json的输出:

[[],{"id":"796","title":"ANSEJ ORAN \/Agence de Soutien \u00e0 l'Emploi des Jeunes d'Oran","locat ...etc

如果你看到,那就是[];一个空数组,当用

解析数据时,这当然会导致我在Java中遇到问题
JSONArray jArray = new JSONArray(result);

向我发出JSONExcpetion:

Error parsing data org.json.JSONException: Value [] at 0 of type org.json.JSONArray cannot be converted to JSONObject

1 个答案:

答案 0 :(得分:1)

不是$OUTPUT = array(array()); - 这会在

中创建空数组

但是$OUTPUT = array();