2010-08-19 138 views
2

我有两个预先存在的变量:PHP在变量名使用可变

$side(其是F或B)

$plate(这是一个3位数字)

我试图建立两个数组称为

$sidecountF
$sidecountB

使用

下面的代码:

$sidecount{$side}[$plate] = 1; 

假设$一边是F和$板是200,我希望最终的结果是,

$sidecountF[200] = 1; 

我,一开始,声明sidecountFsidecountB作为阵列,

$sidecountF = array(); 
$sidecountB = array(); 

所以现在我很为难。

+0

你到底在问什么?你的代码看起来是正确的。 – Webnet 2010-08-19 14:39:37

+0

对不起,我没有留下一个句子。 – Screevo 2010-08-19 14:42:29

回答

12
${"sidecount$side"} = array(); 

但你使用数组关好:

$sidecount = array("F" = array(), "B" => array()); 
$sidecount[$side][$plate] = /* ... */ 
+0

同意使用数组!最终给予更多的灵活性......至少它总是发生在我的脚本中。 – jolt 2010-08-19 14:46:30

+0

+1。 IMO完美回答。 – sberry 2010-08-19 14:47:51

+0

哦,这是完美的作品。谢谢! – Screevo 2010-08-19 14:48:50

0
$_blank = array(
    'sidecount' . $side => array() 
); 

extract($_blank); 

这将是这样做的另一种方式,它也没有被绑定到创建1个变量与${""}您可以创建几个变量一次。