在for循环中回显变量名时获取变量值


Obtaining a variable value when echoing its name inside a for loop

我正在学习,我已经被一些我认为太简单的东西困住了很长时间,如果我是对的,对不起。请帮助我进化,这是我的问题:

我有来自一个形式:

  $text1 = $_POST['TEXT1'];
  $text2 = $_POST['TEXT2'];
  $text3 = $_POST['TEXT3'];

现在我做了:

 for ($n = 1; $n <= 3; $n++) {
 echo "Number " .$n. " is: " .$text.$n;
}

打印:

1号是:1

2号是:2

第三个是:3

当我需要的是:

第一个是:包含在$text1

中的值

数字2是:包含在$text2

中的值

第三个是:包含在$text3

中的值

怎样才能达到我所需要的?

Thanks to lot

for ($n = 1; $n <= 3; $n++) {
 $var = "text".$n;
 echo "Number " .$n. " is: " .$$var;
}

但是如果将POST数据保存在数组

中会更好

你可以这样做:

$text = array();
$text[] = $_POST["TEXT1"];
$text[] = $_POST["TEXT2"];
$text[] = $_POST["TEXT3"];

那么你可以这样做:

for ($n = 1; $n <= count($text); $n++) {
 echo "Number " .$n. " is: " .$text[$n-1];
}

使用

for ($n = 1; $n <= 3; $n++) {
    echo "Number " .$n. " is: " . ${'text'.$n};
}

您可以将您的值放入数组中:

$texts = array($_POST['TEXT1'], $_POST['TEXT2'], $_POST['TEXT3']);
for ($n = 0; $n < count($texts); $n++) {
    echo "Number " . ($n+1) . " is: " . $texts[$n];
}