簡體   English   中英

PHP變量變量,將數字設置為變量名稱的一部分

[英]PHP Variable Variables to set a number as part of a variable name

使用PHP,我有一個從用戶輸入中發布Text Line的表單。

每個text line還附帶其他數據。 因此,用戶提交的每個text line具有以下數據:

  • 文字行字符串
  • 文字線顏色
  • 文字行字體名稱

用戶可以在Form Post中的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 stringcolorfont值。

在上面的示例中,它將是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

是的,這正是要使用的變量變量 ,您可以將其與卷曲語法一起使用:

${"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');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM