2016-01-30 66 views
-1

我知道有讨论串联的话题。 但是,我似乎没有搞清楚什么不对的如何通过连接获取变量?

$LEVEL0 = "Banned"; 
$LEVEL1 = "Member"; 
$LEVEL2 = "Subscriber"; 
$Level = "LEVEL".$userRow['user_level']; 

echo($Level); 

这将永远只是回声存储在$userRow['user_level'] 的数量,而不是附和变量本身的价值。

+2

@leonardo_palma如果你不回答我的问题,请不要打扰。 – SomeDev

+0

$ Level =“LEVEL”。$ userRow ['user_level']; echo $ Level; –

+0

“$ LEVEL”没有定义,据我所知。所以字符串'“$ LEVEL”'解析为一个空字符串。接下来,将'$ userRow ['user_level']'的值连接到该空字符串,这会使您完全保留该值。 – arkascha

回答

0

使用Variable variables

$LEVEL0 = "Banned"; 
$LEVEL1 = "Member"; 
$LEVEL2 = "Subscriber"; 
$Level = "LEVEL" . $userRow['user_level']; 

echo $$Level; 
+0

感谢一堆!很好地工作。 – SomeDev

-1

试试这个

$LEVEL0 = "Banned"; 
$LEVEL1 = "Member"; 
$LEVEL2 = "Subscriber"; 
$Level = $LEVEL.$userRow['user_level']; 

echo $Level; 
+0

对不起,但这绝对没有区别。结果中'$ LEVEL'和''$ LEVEL''是相同的。 – arkascha

+0

是的,你是对的@arkascha $ LEVEL没有在上面提到的代码中定义 –

0

我认为你正在寻找这样的:

$LEVEL = array("Banned","Member","Subscriber"); 

$Levelval = $LEVEL[$userRow['user_level']]; 

echo $Levelval;