2016-03-01 57 views
0

我試圖在json中獲取輸出,但目前我有一個將它們分組在一起,或者刪除json輸出中的鍵。foreach - > array - > json - 將它們組合在一起

$output = array(); 
foreach ($data->results() as $data) { 
    $output[]['id'] = $data->id; 
    $output[]['userid'] = $data->userid; 
    $output[]['title'] = $data->title; 
} 
echo json_encode($output); 

這個當前的代碼將出現在下面,但它們並沒有在id,userid和title中分組,因爲我希望它做。

[{「id」:「31」},{「userid」:「1」},{「title」:「Test 1」},{「id」:「52」},{「用戶ID「:」1「,{」title「:」Test 2「},{」id「:」53「},{」userid「:」1「 { 「ID」: 「58」},{ 「用戶id」: 「1」},{ 「稱號」: 「測試4」}]

然後我試圖做它以另一種方式,通過給予將數組分組一個鍵,但我的問題是,如果系統將ID作爲鍵,則系統不會對代碼進行重新身份驗證。

$output = array(); 
foreach ($data->results() as $data) { 
    $id = $data->id; 
    $output[$id]['id'] = $data->id; 
    $output[$id]['userid'] = $data->userid; 
    $output[$id]['title'] = $data->title; 
} 

{ 「31」:{ 「ID」: 「31」, 「用戶ID」: 「1」, 「標題」: 「試驗1」}, 「52」:{ 「ID」: 「52」,「userid」:「1」,「title」:「Test 2」},「53」:{「id」:「53」,「userid」:「1」,「title」 「},」 58 「:{」 ID 「:」 58" , 「用戶ID」: 「1」, 「稱號」: 「測試4」}}

我想它取下鑰匙,我有輸入。目前我無法真正想到一個辦法。


由於阿南特要求: 輸出爲$數據 - >結果()是從我的表數據庫的所有信息。問題是我想改變數組$ data-> results(),但是找不到這個方法,所以選擇使用上面顯示的方法。

[{「id」:「31」,「userid」:「1」,「title」:「Test 1」},{「id」:「52」,「userid」 ,「title」:「Test 2」},{「id」:「53」,「userid」:「1」,「title」:「Test 3」},{「id」:「58」 : 「1」, 「稱號」: 「測試4」}]

+0

1.請通過打印'$數據 - >結果表明我們() ;它有什麼? 2.你預期的結果看起來像什麼? –

回答

1

一個步驟就創建新的數組

$output = array(); 
foreach ($data->results() as $data) { 
    $output[] = array(
    'id' => $data->id, 
    'userid' => $data->userid, 
    'title' => $data->title); 
} 
echo json_encode($output); 
+0

令人驚歎!認爲你不能在foreach中使用數組,所以從來沒有真正嘗試過這樣做,但是記住了它。 – Nature

相關問題