2013-11-26 86 views
0

在我的劇本的PHP我需要格式化數組年底開始編碼它的一個JSON格式從選擇開始這樣的:PHP創建一個數組由查詢

$result = mysql_query("SELECT datet,vototags,votodom FROM intro_s1 WHERE intro_s1.www = '".$url."' ORDER BY intro_s1.datet DESC"); 

    $data = array( 
     array('Date', 'v1', 'v2'), 

    ); 

    while ($row = mysql_fetch_array($result)) { 
     $data[] .= array($row['datet'], $row['vototags'], $row['votodom']); 
    } 


echo json_encode($data); 

我需要$日期如下: :

[日期,V1,V2],[11/02/2011,12,32],[12/06/2012,99,109] [...]

,而不是我的結果是:

[[「Date」,「v1」,「v2」],「Array」,「Array」,「Array」,「Array」,

ehat在我的代碼中是錯誤的嗎?

在此先感謝

+0

變化'$數據[] =''到$數據[] ='。 –

+0

請注意,相當一段時間以來,mysql函數已被[棄用](http://www.php.net/manual/en/faq.databases.php#faq.databases.mysql.deprecated)。你應該開始轉向mysqli或PDO。 – Oldskool

+0

array_push在這種情況下會很棒:http://php.net/manual/en/function.array-push.php – RJK

回答

2

你在這條線使用字符串連接與.=

$data[] .= array($row['datet'], $row['vototags'], $row['votodom']); 

這樣做的數組一個字符串,它爲您提供了Array值轉換。

如果刪除.,它應該給你,你瞄準的結果:

$data[] = array($row['datet'], $row['vototags'], $row['votodom']); 

或者,如果你真的想確保你添加新的元素到數組,你可以使用array_push()(如果你不關心一個函數調用的開銷,這是):

array_push($data, array($row['datet'], $row['vototags'], $row['votodom']));