dongying3830 2012-01-11 20:49
浏览 65
已采纳

使用数组设置变量名称

I'm trying to use some mysql data in creating part of a variable name to refer to another variable already declared elsewhere. Basically how can I get the $damage_name be part of the if statement boolean check?

$conditions = array(
        'bent_num' => 0,
        'spine_torn' => 0,
        'pages_torn' => 0,
        'water_damage' => 0,
        'pages_highlighted' => 0,
        'pages_noted' => 0,
        'taped' => 0,
        'stained' => 0,
        'mold' => 0,
        'scratched' => 0
        );
    while ($row = mysql_fetch_assoc($res))
    {           
        $damage_name = $conditions[$row['type']]; 

        if (isset($conditions[$row['type']]) && $_SESSION[SELL_is_ . $damage_name . ];  == 'y')
        {
            $condition_score = $condition_score - $row['value'];
        }
    }
  • 写回答

4条回答 默认 最新

  • dpu66046 2012-01-11 20:53
    关注

    Broken syntax and concatenation. Try:

    $_SESSION['SELL_is_' . $damage_name];
    
    • SELL_is_ needs to be quoted.
    • You had an extra concatenation operator after $damage_name
    • An extra semicolon after the closing square bracket.
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?