2016-12-06 78 views
0

我是新來的php編程,所以對於任何錯誤都很抱歉。從另一個數組索引中獲得數組值

我有一個$ monthsKeys變量,它包含一個從0到12的數組。 我有另一個數組($ Months),它包含從十二月到一月的12個月。

我試圖創建一個函數,該數組作爲參數並從$ monthsKeys獲取密鑰值,以便它可以返回包含在 $ Months中的月份名稱。

function getnomMois($monthsKeys){ 
    $monthName= array(['Decembre','Novembre','Octobre','Septembre','Aout','Juillet','Juin','Mai','Avril','Mars','Fevrier','Janvier']); 
    foreach($monthsKeys as $monthName){ 
     $monthName[] = $monthKeys['numMois']; 
    } 
} 

我希望函數返回:

而不是12月的數字則返回十二月

我想要做的事:

我試圖讓鍵從$ monthsKeys數組並使用它從$ MonthName數組中獲得值

我的理解我需要做的:

我必須從第一個數組中提取鍵值,並使用它來獲取第二個數組的值,以便根據第一個數組鍵。

ie: monthKey [12] shoudl允許我返回monthName [12] ='December'。

+1

什麼問題呢?除了array(['syntax。 –

+1

'$ monthName'在第二行是數組,但是在第四行你將它改爲'string'(當你循環的值),然後你試圖做數組操作('[]')在這個字符串上。 – Dekel

+0

如果你通過編號索引得到'$ monthName'數組的一個元素;即'$ monthName [0]',它已經完成了你要做的事情'$ monthName [0] ='Decembre'' – coderodour

回答

1

這裏是你的代碼的解釋(你有問題):

function getnomMois($monthsKeys){ 
    $monthName= array(['Decembre','Novembre','Octobre','Septembre','Aout','Juillet','Juin','Mai','Avril','Mars','Fevrier','Janvier']); 
    //^ here $monthName is array 
    foreach($monthsKeys as $monthName){ 
         //^ here you change $monthName to string 
         // becasuse you loop over the arrays and put each value 
         // inside the $monthName variabl 
     $monthName[] = $monthKeys['numMois']; 
       //^ here are you tring to do array operation, 
       // but the $monthName variable currently is a string (and you can't do that) 
    } 
} 
相關問題