2014-11-02 69 views
0

我有一個數組的代碼,問題是它只顯示數組的最後兩項。PHP Array不顯示所有項目

$svi= array(
     $WMN1, 
     $LNG1, 
     $SSWN1, 
     $DT1, 
     $OET1, 
     $OW1, 
     $NT1 
    ); 

    $imena_sajtova = array(
     'Prvi WMN', 
     'Drugi LNG', 
     'Treci SSWN', 
     'Cetvrti DT', 
     'Peti OET', 
     'Sesti OW', 
     'Sedmi NT' 
    ); 

    $novi_svi =array_combine($svi, $imena_sajtova); 

    echo '<pre>'; print_r($novi_svi); echo '</pre>'; 

而且這段代碼的結果是:

Array 
(
    [2] => Sedmi NT 
    [1] => Sesti OW 
) 

可能是什麼問題?謝謝!

的var_dump($ SVI)顯示這一點:

array(7) { [0]=> int(2) [1]=> int(1) [2]=> int(1) [3]=> int(1) [4]=> int(2) [5]=> int(1) [6]=> int(2) } 

此$ SVI陣列具有從一些功能的結果:

$WMN1=RSS_Brojac($WMN); 
$LNG1=RSS_Brojac($LNG); 
$SSWN1=RSS_Brojac($SSWN); 
$DT1=RSS_Brojac($DT); 
$OET1=RSS_Brojac($OET); 
$OW1=RSS_Brojac($OW); 
$NT1=RSS_Brojac($NT); 

我已經在array_combine改變陣列的順序,它的工作原理!

$novi_svi =array_combine($imena_sajtova, $svi); 

    arsort($novi_svi); 


    echo '<pre>'; print_r($novi_svi); echo '</pre>'; 

而且這段代碼的輸出是:

Array 
(
    [Prvi WMN] => 2 
    [Sedmi NT] => 2 
    [Peti OET] => 2 
    [Sesti OW] => 1 
    [Cetvrti DT] => 1 
    [Drugi LNG] => 1 
    [Treci SSWN] => 1 
) 

I'have它們排序從高分到低分,這就是我其實是想用這個數組做。 現在,如何分離結果,讓他們在HTML內的單獨的div? 那麼,我將能夠改變他們的風格,並創建一些與這些結果的表。

結果是從一些RSS源輸出的,我用它來計算已發佈新聞的數量。

謝謝你的時間!

+3

'的var_dump($ SVI);'---我們不知道那是什麼陣列的內部。但似乎這些都不是唯一的數字 – zerkms 2014-11-02 20:32:42

+0

該陣列的內部是一些功能: \t $ WMN1 = RSS_Brojac($ WMN); \t \t $ LNG1 = RSS_Brojac($ LNG); \t \t $ SSWN1 = RSS_Brojac($ SSWN); \t \t $ DT1 = RSS_Brojac($ DT); \t \t $ OET1 = RSS_Brojac($ OET); \t \t $ OW1 = RSS_Brojac($ OW); \t \t $ NT1 = RSS_Brojac($ NT); – Adnan 2014-11-02 20:37:31

+0

@Adnan編輯該問題,而不是將其寫爲註釋。這是不可讀的:-( – 2014-11-02 20:41:12

回答

0

那麼你走了,數組合並後只檢索兩個值的確切原因是因爲你只提供了兩個唯一的整數,即1,2作爲要組合的數組的索引。您的7個字符串至少需要7個唯一值。

Here's an example using your code and it doesn't work

而且...... Here's an example using 7 unique indexes, that does work

+0

是的,你是完全正確的。這是問題!謝謝@Ohgodwhy。 我幾乎完成了應用程序,但我需要一些額外的幫助與此代碼。我發佈了更新。 :) – Adnan 2014-11-02 21:07:36

+1

@Adnan請創建一個新問題並回滾編輯。這不是一個長線程的論壇式網站,這就是它的獨特之處。 :) – Ohgodwhy 2014-11-02 21:11:03

+0

謝謝,我現在就做。 :) – Adnan 2014-11-02 21:13:17

0

在合併之前指定第一個數組中的值。可以用array_map()來實現。我假設你知道變量中所需的類型。