2013-03-12 96 views
0

我想要设置变量负载,然后通过循环将它们添加到数组中,将键设置为变量名称,如下所示。将变量名称设置为键值将其值设置为数组中的值

我只是不知道如何创建循环。

// create an array 
$array = array(); 

// Set up Variable 
$green = "31d944"; 
$red = "d92929"; 
$blue = "1b43d9"; 
$pink = "d96ad8"; 
$orange = "d98225"; 

// Loop though - not sure how this would work... 
for($i=0; $i<5; $i++){ 
    $array[] = $varNmae => $green; 
} 

// Output something like below 
$array['green']; // output '31d944' 
$array['red']; // output 'd92929' 
$array['blue']; // output '1b43d9' 
$array['pink']; // output 'd96ad8' 
$array['orange']; // output 'd98225' 
+0

直接访问设置阵列,比如'$阵列[ '绿色'] = “31d944”'? – 2013-03-12 12:45:05

回答

6

compact()extract()相反(提取关联数组到本地符号表),并且要使用什么。

$array = compact("green", "red", "blue", "pink", "orange"); 

CodePad

5

功能compact正是这样做的:

$array = compact('green', 'red', 'blue', 'pink', 'orange'); 
0

在定义变量然后将它们添加到数组中而不是仅仅初始化数组时,是什么想法?

// Can't you just use this? 
$ary = array(
    'green' => '31d944', 
    ... 
    'orange' => 'd98225', 
); 

可以用

foreach ($ary as $color => $val) { 
    echo "{$color} is equal to {$val}"; 
} 

被环或者作为

echo $ary['green'];