2014-09-03 77 views
-2

嗨,我抓住我用PHP表,獲取該輸出的Json從MySQL和PHP

{"id":"1","player":"123","name":"his_name","reason":"reason text","instance":"1","lastupdated":"datetime"} 

但我希望得到的財產以後這樣

text{"id":"1","player":"123","name":"his_name","reason":"reason text","instance":"1","lastupdated":"datetime"} 

當前的PHP:

mysql_connect($dbhost.':'.$dbport, $dbuser, $dbpass) or die (mysql_error()); 
mysql_select_db("dbname") or die (mysql_error()); 

$sth = mysql_query("SELECT *"."FROM `table_name` Order By id Desc;"); 
$rows = array(); 
while($r = mysql_fetch_assoc($sth)) { 
    $rows[] = $r; 
} 

print json_encode($rows); 

db結構:

player | name | reason | instance | lastupdated 

任何幫助,將不勝感激

+0

你爲什麼要附加'文本'? – user3141985 2014-09-03 14:56:07

+0

我在輪詢它的方式我需要在那裏有文本,我已經在各種API上看到它,例如twitch的kraken api。 – Gav 2014-09-03 14:58:18

+2

添加這樣的文字會導致json無效。除非你是作爲jsonp類型響應的王,否則在json字符串之外添加文本沒有意義。例如: – 2014-09-03 14:58:40

回答

0

如果您想在從數據庫中獲得完整結果集之前僅添加一個鍵。據我所知,您的示例鏈接。

然後你就可以更新你這樣的代碼:

// Assuming $rows is already populated with desired data. 

$res = array(); 
$res['text'] = $rows; 

print_r(json_encode($res)); 

輸出:

{"text":{"id":1,"player":123,"name":"his_name","reason":"reason text","instance":1,"lastupdated":"datetime"}} 

希望它能幫助。

+0

究竟是我在找什麼它只是我不知道如何解釋它。 – Gav 2014-09-03 18:31:48

1

如果你想在前面加上一個文本字符,你可以使用字符串連接運算符與打印:

print "text" . json_encode($rows); 

這是否對你的工作?但是text的內容應該是什麼?

+0

; http://api.twitch.tv/api/team/teamliquid/live_channels.json他們的方式-channel --name --description --etc ... – Gav 2014-09-03 14:56:52

+0

啊...所以,你在技術上追加一個數組,在這個數組之前,對嗎? – 2014-09-03 14:58:29