如何使用php数组创建变量?

如何使用php数组创建变量?,php,arrays,Php,Arrays,我有一个PHP数组,如下所示: Array( [0] => Array ( [name] => month_year [value] => 201609 ) [1] => Array ( [name] => advance_amount [value] => 50% ) ) 使用此数组,我想创建如下两个变量: $mon

我有一个PHP数组,如下所示:

Array(

  [0] => Array
      (
          [name] => month_year
          [value] => 201609
      )

  [1] => Array
      (
          [name] => advance_amount
          [value] => 50%
      )

)
使用此数组,我想创建如下两个变量:

$month_year = '201609'; 
$advance_amount = '50%'; 
有人能告诉我这在php中是可能的吗

我用两个
foreach
试过了,但我不知道如何预设定

foreach ($_POST as $k => $data) {
  //echo "<pre>", print_r($data)."</pre>";
  foreach ($data as $key => $value) {
    echo $key."<br>";
  }
}
foreach($\u发布为$k=>$data){
//回显“”,打印($data)。“”;
foreach($key=>$value形式的数据){
回声$key.“
”; } }
使用。您的
foreach
循环应该如下所示:

$a = [['name' = 'month_year', 'value' => '201609'], ['name' => 'advance_amount', 'value' => '50%']];


foreach ($a as $line) {
    ${$line['name']} = $line['value'];
}

php > echo $month_year; //201609
foreach($\u发布为$k=>$data){
$$data['name']=$data['value'];
}
//显示变量
echo$month\u year。“
”; echo美元预付款;
使用。您的
foreach
循环应该如下所示:

$a = [['name' = 'month_year', 'value' => '201609'], ['name' => 'advance_amount', 'value' => '50%']];


foreach ($a as $line) {
    ${$line['name']} = $line['value'];
}

php > echo $month_year; //201609
foreach($\u发布为$k=>$data){
$$data['name']=$data['value'];
}
//显示变量
echo$month\u year。“
”; echo美元预付款;
PHP7样式:

  $data = array(array(
            'name' => 'month_year',
            'value' => 201609,
        ), array(
            'name' => 'advance_amount',
            'value' => '50%',
        )
    );

    foreach ($data as $key => $value) {
        ${$value['name']} = $value['value'];
    }


    echo $month_year;
    echo '<br>';
    echo $advance_amount;
看一下参考资料

谨慎

进一步取消对作为数组的变量属性的引用 PHP5和PHP7之间的语义不同。PHP7.0迁移 该指南包括有关已定义表达式类型的更多详细信息 更改,以及如何放置大括号以避免歧义

PHP7样式:

  $data = array(array(
            'name' => 'month_year',
            'value' => 201609,
        ), array(
            'name' => 'advance_amount',
            'value' => '50%',
        )
    );

    foreach ($data as $key => $value) {
        ${$value['name']} = $value['value'];
    }


    echo $month_year;
    echo '<br>';
    echo $advance_amount;
看一下参考资料

谨慎

进一步取消对作为数组的变量属性的引用 PHP5和PHP7之间的语义不同。PHP7.0迁移 该指南包括有关已定义表达式类型的更多详细信息 更改,以及如何放置大括号以避免歧义


首先创建循环并声明var

$data = [
    [
        'name' => 'month_year',
        'value' => 201609
    ],
    [
        'name' => 'advance_amount',
        'value' => '50%'
    ]
];

list($month_year, $advance_amount) = array_map(function($value){
    return $value['value'];
}, $data);

echo sprintf('Month of the year is %s with porcentage %s', $month_year, $advance_amount);
$data=array(数组(
'name'=>'month\u year',
“值”=>201609,
),数组(
“名称”=>“预付款金额”,
“值”=>“50%”,
)
);
foreach($key=>$value形式的数据){
${$value['name']}=$value['value'];
}
echo$month\u year;
回声“
”; echo美元预付款;
首先创建循环并声明变量

$data = [
    [
        'name' => 'month_year',
        'value' => 201609
    ],
    [
        'name' => 'advance_amount',
        'value' => '50%'
    ]
];

list($month_year, $advance_amount) = array_map(function($value){
    return $value['value'];
}, $data);

echo sprintf('Month of the year is %s with porcentage %s', $month_year, $advance_amount);
$data=array(数组(
'name'=>'month\u year',
“值”=>201609,
),数组(
“名称”=>“预付款金额”,
“值”=>“50%”,
)
);
foreach($key=>$value形式的数据){
${$value['name']}=$value['value'];
}
echo$month\u year;
回声“
”; echo美元预付款;
使用列表,它为您提供了更清晰的解决问题的方法:例如

Month of the year is 201609 with porcentage 50%
这将有一个更清晰的代码,你正在寻找的结果


使用列表,它为您提供了更清晰的解决问题的方法:例如

Month of the year is 201609 with porcentage 50%
这将有一个更清晰的代码,你正在寻找的结果