如何使用另一个变量更改变量的名称

时间:2021-03-31 19:18:44

标签: php variables

首先,我写了这段代码,但是太长了...

    if ($option1 == 'true')
        {
            echo "it works";
        }
    if ($option2 == 'true')
        {
            echo "it works";
        }
    if ($option3 == 'true')
        {
            echo "it works";
        }
    if ($option4 == 'true')
        {
            echo "it works";
        }
    if ($option5 == 'true')
        {
            echo "it works";
        }
    if ($option6 == 'true')
        {
            echo "it works";
        }
    if ($option7 == 'true')
        {
            echo "it works";
        }

所以,我想改进代码并有这样的东西,但它不起作用。我无法理解如何更改 for 中 if 变量的名称。

感谢您的帮助。

for ($i = 1; $i <= 7; $i++)
{
    if ($option($i) == "true")
        {
            echo "it works";
        }
    }
}

2 个答案:

答案 0 :(得分:0)

使用花括号在构造的字符串后命名变量:

if ( ${"option$i"} == true ) …

...但正如评论中所述,如果您想要做的是使用增量数字索引变量集合,您想要使用常规数组,特别是如果您计划转移到其他语言(如 C)不支持这种引用方式。

PHP 还支持关联数组,它使您可以使用字符串而不是数字作为索引,这使它们成为键->值对集合。

答案 1 :(得分:0)

PHP 有一个称为变量变量的特性,您可以使用它根据字符串名称动态引用变量。我不建议使用它们,因为它会导致以后难以理解代码。 https://www.php.net/manual/en/language.variables.variable.php

相关问题