2014-09-12 65 views
1

PHP JSON和Swift JSON的一些問題。請幫我弄清楚多餘的空間,\ n和其他的東西。爲什麼輸出不是一個乾淨的連續字符串。我不需要漂亮的打印或任何東西。php json_encode&newline,swift JSONSerialization導致奇怪的輸出

PHP:

$sql = "SELECT * FROM entries"; 
$stmt = $db->prepare($sql); 
$stmt->execute(); 
$entries = $stmt->fetchAll(PDO::FETCH_OBJ); 
$db = null; 
echo '{"root":'.json_encode($entries).'}'; 

斯威夫特:

var request : NSMutableURLRequest = NSMutableURLRequest() 
    request.URL = NSURL(string: url) 
    request.HTTPMethod = "GET" 

    NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue(), completionHandler:{ (response:NSURLResponse!, data: NSData!, error: NSError!) -> Void in 

     var error: NSError? 
     let jsonResult = NSJSONSerialization.JSONObjectWithData(data, options:NSJSONReadingOptions.AllowFragments, error: &error) as? NSDictionary 

     if (jsonResult != nil) { 
      println(jsonResult?.description) 
     } else { 
      println(jsonResult?.description) 
     } 

控制檯輸出:

Optional("{\n root =  (\n    {\n   id = 1;\n   text = \"Test Entry\";\n  },\n    {\n   id = 2;\n   text = \"Test Entry 2\";\n  }\n );\n}") 

數據庫:

enter image description here

回答

0

做這一點:

println(jsonResult!.description) 

或者這樣:

println(NSString(data:data, encoding:NSUTF8StringEncoding)) 
+0

而是在一個可選的包裝吧,解開可選(? vs!) – ccwasden 2014-09-12 23:15:14

+0

完美!謝謝。 – 2014-09-12 23:17:49