我是PHP的新手,我正在尝试将多个参数设置为相同的值。 我做了(可能)丑陋的方式。
$thpic0 = "thpic_dummy";
$thpic1 = "thpic_dummy";
$thpic2 = "thpic_dummy";
$thpic3 = "thpic_dummy";
etc...
$thpic13 = "thpic_dummy";
$thpic14 = "thpic_dummy";
由于唯一的char更改是参数I中的最后一个char,它可以在for循环中完成,但这(显然)不起作用:
//Reset th sorting pics
for($i=0;$i<=14;$i++)
{
$thpic{$i} = "thpic_dummy";
}
在没有太多代码的情况下,还有另一种方法吗?
答案 0 :(得分:4)
正确的语法是${…}
而不是$…{…}
:
${"thpic$i"} = ...;
将是有效的语法。
进一步的PHP手册讲述:http://php.net/language.variables.variable.php
答案 1 :(得分:1)
你最好的选择是把它放到这样一个数组中:
for ($i = 0; $i <= 14; $i++) {
$thpic[$i] = "thpic_dummy";
}
print_r($thpic);
这会返回如下内容: 阵列
(
[0] => thpic_dummy
[1] => thpic_dummy
[2] => thpic_dummy
[3] => thpic_dummy
[4] => thpic_dummy
[5] => thpic_dummy
[6] => thpic_dummy
[7] => thpic_dummy
[8] => thpic_dummy
[9] => thpic_dummy
[10] => thpic_dummy
[11] => thpic_dummy
[12] => thpic_dummy
[13] => thpic_dummy
[14] => thpic_dummy
)
你可以这样称呼:
print $thpic[1]
答案 2 :(得分:1)
你应该使用任何数组来完成这项任务
$thpic = array();
for($i=0;$i<=14;$i++)
{
$thpic[$i] = "thpic_dummy";
}
echo $thpic[1];
答案 3 :(得分:0)
您可以使用变量来实现您想要的目标:
for($i=0;$i<=14;$i++)
{
$variable = 'thpic' . $i;
$$variable = "thpic_dummy";
}
您可以在文档中详细了解这些内容:http://php.net/manual/en/language.variables.variable.php
或者,您可以使用以下语法:${"thpic" . $i} = "thpic_dummy";