2017-10-14 50 views
1

我太麻煩了。我需要以下類型的數組: -帶動態值的動態數組變量

$val = "abc"; 

$arr1["besk"] = $val 
$arr2["besk"] = $val 
    .  
    . 
$arr15["besk"] = $val 

下面我想: -

for($i = 1; $i<16; $i++) 
{ 
    $arr.$i["besk"] = $val 
} 

在這裏,我$ VAL。所以不用擔心這一點。但是陣列沒有正確創建。任何幫助,將不勝感激。

+0

如果你不介意在你的程序中解釋什麼是$ var和val。 –

+0

,並更新了此程序的預期輸出。 –

+0

@kmgkumar檢查我編輯的問題。 – ripa

回答

2

您需要使用可變的變量(不推薦)

for($i = 1; $i<16; $i++) 
{ 
    ${"arr".$i}["besk"] = $val 
} 

編輯:@CBroe是正確的關於他的評論,你應該使用數組來代替。所以最好的解決辦法是建立一個二維數組,像這樣:

$arr = []; 
for($i = 0; $i<15; $i++) 
{ 
    $arr[$i]["besk"] = $val 
} 

唯一的區別是你的數組索引從0開始,現在,如果你想擁有你的數組的第三個價值,你需要這個命令$arr[2]["besk"]

1

它是非常簡單的使用這樣的:

for($i = 1; $i<16; $i++) 
{ 
     ${$arr.$i}["besk"] = $val 
} 
1

使用這種方法:

for($i = 1; $i<16; $i++) 
 
{ 
 
    ${$arr.$i}["besk"] = $val; 
 
}

3

首先定義像

$arr = 'arr';

數組作爲字符串 然後使用foreach 等

for($i = 1; $i<16; $i++) 
    { 
     ${$arr.$i}["besk"] = $val; 
} 
1

添加新的變量

$val = "abc"; 
$arrName = "arr"; //this one 
$arr1["besk"] = $val 
$arr2["besk"] = $val 
    .  
    . 
$arr15["besk"] = $val 

,並把它稱爲

for($i = 1; $i<16; $i++) 
{ 
     ${$arrName.$i}["besk"] = $val 
} 

PS。你沒有創建數組,你只需創建15個帶有1個索引的數組變量(「besk」索引)