您好我的问题是PHP变量变量。
基本上我想将n个课程的课程标记存储到n个变量中,例如cw1和cw2等。使用变量变量我怎样才能使用cw1,cw2等。
答案 0 :(得分:18)
改为使用array:
PHP中的array实际上是一个有序的地图。映射是将值与键关联的类型。此类型针对多种不同用途进行了优化;它可以被视为数组,列表(向量),哈希表(地图的实现),字典,集合,堆栈,队列,甚至更多。由于array值可以是其他array s,树和多维array也是可能的......
答案 1 :(得分:7)
您应该使用数组,Gumbo wrote:
$cw = array();
for($i = 0; $i < $n; ++$i) {
$cw[] = $something;
}
然而,解决您的问题:
for($i = 0; $i < $n; ++$i) {
$tmp = 'cw' . $i;
$$tmp = $something;
}
答案 2 :(得分:2)
我不完全确定我理解这个问题,但你可以这样做:
$VarName = 'cw1';
$$Varname = 'Mark Value';
如果你有大量的这些,你可能最好为他们使用数组,索引基于课程。
即:
$a = array();
$a['cw2'] = cw2value;
// etc.
答案 3 :(得分:2)
<?php
//你甚至可以添加更多的美元符号
$Bar = "a";
$Foo = "Bar";
$World = "Foo";
$Hello = "World";
$a = "Hello";
$a; //Returns Hello
$$a; //Returns World
$$$a; //Returns Foo
$$$$a; //Returns Bar
$$$$$a; //Returns a
$$$$$$a; //Returns Hello
$$$$$$$a; //Returns World
// ...依此类推...... //
?>
答案 4 :(得分:1)
php > for ($i=0; $i<5; $i++)
{ ${"thing{$i}"} = $i; }
php > echo $thing1;
1
php > echo $thing2;
2
php > echo $thing3;
3
请注意,我们在字符串周围使用围绕花括号的美元符号。
答案 5 :(得分:0)
变量变量以这种方式工作
$var = "foo";
$$var = "bar";
echo $foo; // bar
但我不建议这样做,因为如果$ var的值发生变化,那么你就不能再打印出这段代码中的第3行了。
如果你能详细说明你想做什么,我想我们可以帮助你更多。