php - 数组和 foreach 循环更有效地处理输入变量

标签 php variables

如果我有 20 个用户输入变量并且想在 $var[0..19]、$_SESSION['var'[0..19]] 和 $_POST['var'[0..19] 之间工作]],例如:

$var0 = $_SESSION['var0'] = $_POST['var0'];

我如何使用数组和 foreach 循环有效地做到这一点?

其他详细信息:

所以最初我一直在想尝试这样的事情:

$inputVars = array('var1'=>$var1, 'var2'=>$var2, 'var3'=>$var3, 'var4'=>$var4, 'var5'=>$var5)

$inputVarsS = array($_SESSION['inputVars = array('svar1'=>$_SESSION['var1']'], 'svar2'=>$_SESSION['var2'], 'svar3'=>$_SESSION['var3'], 'svar4'=>$_SESSION['var4'], 'svar5'=>$_SESSION['var5'])

$inputVarsP = array($_POST['inputVars = array('pvar1'=>$_POST['pvar1']'], 'pvar2'=>$_POST['pvar2'], 'pvar3'=>$_POST['pvar3'], 'pvar4'=>$_POST['pvar4'], 'pvar5'=>$_POST['pvar5'])

然后我想我可以做类似的事情:

$inputVarsS['svar1'] = $inputVarsP['pvar1'];

将 session 值 svar1 设置为发布值 pvar1。但我认为确实必须有一种更有效的方法来完成这些类型的作业。

我想我可以很容易地拥有 $inputVars 数组并将 POST SESSION 值分配给键,但是如果我想同时使用 POST 和 SESSION 值怎么办?然后我假设我需要多个阵列?

最佳答案

你可以使用 $$ 来定义变量名,但我认为使用数组 $vars 会更好。

使用 $var0, $var1, ...., 你可以像 echo $var4 一样访问它们

foreach(range(0, 19) as $index)
{
  $var = 'var' . $index;
  $$var = $_SESSION[$var] = $_POST[$var];
}

使用数组 $vars,并使用 echo $vars[4] 访问它们

foreach(range(0, 19) as $index)
{
  $var = 'var' . $index;
  $vars[$var] = $_SESSION[$var] = $_POST[$var];
}

关于php - 数组和 foreach 循环更有效地处理输入变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43425510/

相关文章:

variables - 发送邮件消息失败,因为附件丢失(变量变乱)

Python:静态变量装饰器

c# - 在主窗体中更改变量 (Winform c#)

Php 或 mysql 命令 - 将 mysql 行中的数据写入文本文件

尝试使用 ftp 查看文件时 PHP fopen 不工作

php - 如果 <a> 链接是一个 PDF 文件,相应的样式

javascript - 为什么 var 允许重复声明,而 const 和 let 却不允许重复声明?

javascript - 好奇 : is it possible to have dynamic Ajax data variable names?

javascript - 在 JavaScript 中循环遍历 json_encode PHP 数组

php - 错误 : __autoload() is deprecated, 改为使用 spl_autoload_register()