簡體   English   中英

將使用循環創建的數組附加到另​​一個數組

[英]Appending an array created with a loop to another array

我有一個陣列

$variables_a = array(
   'a' => $a,
   'b' => $b,
   'c' => $c
);

然后另一個$variables_b = array('x','y','z')我想循環遍歷B數組,如下所示:

foreach($variables_b as $var) {
    $variables_c[] = array($var => $$var);
}

然后將A&C與$variables_combined = array_merge($variables_A, $variables_C)合並在一起

我希望得到的輸出是我print_r的時候

Array
(
     [a] => a
     [b] => b
     [c] => c
     [x] => x
     [y] => y
     [z] => z
)

但我得到的是

Array
(
     [a] => a
     [b] => b
     [c] => c
     [0] => Array
         (
            [x] => x
         )    
     [1] => Array
         (
            [y] => y
         )    
     [2] => Array
         (
            [z] => z
         )    
)

如果我將$feature_variables[] = array($feature => $$feature)更改$feature_variables = array($feature => $$feature)我得到

Array
(
     [a] => a
     [b] => b
     [c] => c
     [z] => z
)

$variables_b的最后一項,但沒有其他項。 那我哪里錯了?

這樣做:

$newvar = $variables_a;

foreach($variables_b as $var)
{
$newvar[$var] = $var;
}

$ newvar將包含您想要的數組

請循環遍歷數組c,如:

foreach($variables_b as $var) {
    $variables_c[$var] = $$var;
}

嘗試這個,

foreach($variables_b as $var) {
   $variables_c[$var] = $$var;
}
<?php

$variables_a = array(
   'a' ,
   'b' ,
   'c'
);

$variables_b = array('x','y','z');
 $variables_c=array();

foreach($variables_a as $var) {
    $variables_c[$var] =$var;

}

foreach($variables_b as $var) {
    $variables_c[$var] =$var;

}
print_r($variables_c);

?>
============
and test in : "http://codepad.org/1ICZxPIG"
$variables_a = array(
    'a' => $a,
    'b' => $b,
    'c' => $c
);
$variables_b = array('x','y','z');

foreach($variables_b as $var) {
$variables_c[$var] = $$var;
}


$variables_combined = array_merge($variables_a, $variables_c);

echo "<pre>";print_r($variables_combined);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM