2

我是 PHP 新手,我正在尝试将多个参数设置为相同的值。我以(可能)丑陋的方式做到了。

$thpic0 = "thpic_dummy";
$thpic1 = "thpic_dummy";
$thpic2 = "thpic_dummy";
$thpic3 = "thpic_dummy";
etc...
$thpic13 = "thpic_dummy";
$thpic14 = "thpic_dummy";

由于唯一的字符更改是我认为可以在 for 循环中完成的参数中的最后一个字符,但这(显然)不起作用:

//Reset th sorting pics
for($i=0;$i<=14;$i++)
{
$thpic{$i} = "thpic_dummy";
}

有没有其他方法可以在没有太多代码行的情况下做到这一点?

4

4 回答 4

4

正确的语法${…}$…{…}

${"thpic$i"} = ...;

将是有效的语法。

关于此的一些进一步的 PHP 手册讲座:http: //php.net/language.variables.variable.php

于 2013-10-13T11:50:27.887 回答
1

您最好的选择是可能将其放入这样的数组中:

for ($i = 0; $i <= 14; $i++) {
    $thpic[$i] = "thpic_dummy";
}

print_r($thpic);

这将返回如下内容: Array

(
    [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]
于 2013-10-13T11:52:07.977 回答
1

您应该为此任务使用任何数组

$thpic = array();
for($i=0;$i<=14;$i++)
{
    $thpic[$i] = "thpic_dummy";
}

echo $thpic[1];
于 2013-10-13T11:55:15.783 回答
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";

于 2013-10-13T11:51:13.410 回答