search

Home  >  Q&A  >  body text

php变量名中有变量

$a = array(
    array(
        'name' => 'lang',
        'user' => '0',
        'value' => 'zh-CN'
        ),
    array(
        'name' => 'charset',
        'user' => '22',
        'value' => 'UTF-8'
        ),
);

想在页面以 $site['lang'] 输出 zh-CN,$site['charset'] 输出 UTF-8

我的错误写法,求写法

foreach ($a as $opt) {
    foreach ($opt as $key => $value) {
        if ($key == 'name') {
            $key_name = $value;
        }
        if ($key == 'value') {
            $key_value = $value;
        }
    }
    $site = 'site[\''. $key_name .'\']';
    $$site = $key_value;
}
迷茫迷茫2828 days ago705

reply all(1)I'll reply

  • 迷茫

    迷茫2017-04-10 15:11:39

    //if your php version >= 5.5
    $site = array_column($a, 'name', 'value');
    
    //else
    $site = array();
    foreach($a as $t) $site[$t['name']] = $t['value'];
    

    reply
    0
  • Cancelreply