带有特定$\请求的PHP循环

带有特定$\请求的PHP循环,php,Php,是否可以基于$\u请求的特定变量名进行循环,例如: if (!$POST) { do something } else { if ($_REQUEST['name1']) { do something } elseif ($_REQUEST['name2']) { do something } } 是的,您的示例中的“做点什么”部分可以是循环或您想要的任何其他代码。是的,您的示例中的“做点什么”部分可以是循环或您想要的任何其他代码。确实,您可以得到您想要的复杂程度: foreach($_

是否可以基于
$\u请求的特定变量名进行循环,例如:

if (!$POST)
{
do something
}

else {

if ($_REQUEST['name1'])
{
do something
}
elseif ($_REQUEST['name2'])
{
do something
}

}

是的,您的示例中的“做点什么”部分可以是循环或您想要的任何其他代码。

是的,您的示例中的“做点什么”部分可以是循环或您想要的任何其他代码。

确实,您可以得到您想要的复杂程度:

foreach($_REQUEST as $key => $val)
{
    switch($key)
    {
        case 'name1':
            if(is_array($val))
            {
                foreach($val as $v)
                {
                     // do something for each element in the $_REQUEST['name1'] array
                }
            }
            else
            {
                // do something for $_REQUEST['name1'] which is not an array
            }
            break;

        case 'name2':
            if(is_array($val))
            {
                foreach($val as $v)
                {
                     // do something for each element in the $_REQUEST['name2'] array
                }
            }
            else
            {
                // do something for $_REQUEST['name2'] which is not an array
            }
            break;
    }
}

事实上,你可以随心所欲地变得复杂:

foreach($_REQUEST as $key => $val)
{
    switch($key)
    {
        case 'name1':
            if(is_array($val))
            {
                foreach($val as $v)
                {
                     // do something for each element in the $_REQUEST['name1'] array
                }
            }
            else
            {
                // do something for $_REQUEST['name1'] which is not an array
            }
            break;

        case 'name2':
            if(is_array($val))
            {
                foreach($val as $v)
                {
                     // do something for each element in the $_REQUEST['name2'] array
                }
            }
            else
            {
                // do something for $_REQUEST['name2'] which is not an array
            }
            break;
    }
}

将“do something”替换为每个请求类型所需的代码。

将“do something”替换为每个请求类型所需的代码。

我真的不知道您的意思是什么。是的,您可以循环并检查
$\u请求
是否包含与某些名称模式匹配的键,但这可能不是做你想做的事情的最佳方式。你为什么不让你的表单/URL发送一个名称数组,而不是
name1
name2
等等?我将尝试澄清一下——对于
if
else if
循环,是否有可能有循环根据URL是:
name1
还是
name2
执行?…是的,你写了“做点什么”的地方在
name1
下,放置
name1
的循环。在
name2
下写“dosomething”的地方,放置
name2
的循环。你还没有真正弄清楚为什么会有问题。我真的不知道你的意思是什么。是的,你可以循环并检查
$\u REQUEST
是否包含与某些名称模式匹配的键,但这可能不是做任何你想做的事情的最佳方式。你为什么不让你的表单/URL发送一个名称数组,而不是
name1
name2
等等?我将尝试澄清一下——对于
if
else if
循环,是否有可能有循环根据URL是:
name1
还是
name2
执行?…是的,你写了“做点什么”的地方在
name1
下,放置
name1
的循环。在
name2
下写“dosomething”的地方,放置
name2
的循环。你还没有真正弄清楚为什么会有问题。