使用PHP我有一个从用户输入发出Text Line
的表单。
每个text line
还有其他数据。因此,用户提交的每个text line
都有以下数据:
用户可以在表单帖子中提交 1到6 Text Lines
的任何位置。
所以在后端PHP脚本中我试图做这样的事情......
//Sign Text Lines
$numberOfTextLines = $this->getRequest()->getPost('count'); // 4
for ($line=1; $line <= $numberOfTextLines; $line++) {
$line1Text = $this->getRequest()->getPost('line-1-text');
$line1TextColor = $this->getRequest()->getPost('line-1-colorpicker');
$line1TextFont = $this->getRequest()->getPost('line-1-font');
}
$numberOfTextLines
保存用户在POST中提交的Text Lines
个数。
因此,使用这么多行,我想循环这么多次并设置一个变量来保存每行文本的Text Line string
,color
和font
值提交。
在上面的例子中,它将是 4行文字。所以它需要循环4次并为每一行设置3个变量。 4行文字x 3个变量= 12个变量共设置。
在我的脚本的其他部分,我应该可以轻松地在下面执行以下操作来检查是否存在文本行,如果存在,则应该能够访问它的值...
if(isset($line4Text) && $line4Text != ''){
echo 'Line 4 Text: ' . $line4Text;
echo 'Line 4 Text Color: ' . $line4TextColor;
echo 'Line 4 Text Font: ' . $line4TextFont;
}else{
$line4Text = '';
$line4TextColor = '';
$line4TextFont = '';
}
所以你可以看到,我需要一个存储在变量$numberOfTextLines
中的数字,它可以是1到6之间的任何值。
根据数字,我需要多次循环并为每个数字设置3个变量。将变量名称中的数字替换为行号。因此,在下面的3个变量中,名称中的数字4将根据循环迭代中的数字替换为相应的数字:
$line4Text
$line4TextColor
$line4TextFont
我不知道该怎么做但我认为可能与Variable Variables
有关?
答案 0 :(得分:2)
是的,这正是使用variable variables的内容,您只需使用卷曲语法:
${"line". $line . "Text"} = $this->getRequest()->getPost('line-' . $line . '-text');
${"line" . $line . "TextColor"} = $this->getRequest()->getPost('line-' . $line . '-colorpicker');
${"line" . $line . "TextFont"} = $this->getRequest()->getPost('line-' . $line . '-font');