2017-03-03 66 views
1

我試圖將下面的PHP變成一個循環。我在過去完成了循環,但是這個難以讓語法正確。循環的PHP語法

$answer1= $_POST['answer1']; 
    $answer2= $_POST['answer2']; 
    $answer3= $_POST['answer3']; 
    $answer4= $_POST['answer4']; 
    $answer5= $_POST['answer5']; 
    $answer6= $_POST['answer6']; 
    $answer7= $_POST['answer7']; 
    $answer8= $_POST['answer8']; 
    $answer9= $_POST['answer9']; 
    $answer10= $_POST['answer10']; 
    $answer10= $_POST['answer10']; 

到目前爲止,我一直在使用如下所示的循環。

for ($x = 1; $x <= 10; $x++) { 
    $answer . $x = $_POST['answer' . $x]; 

    $b = "\$answer" . $x; 

    $a = $b . "= \$_POST[" . $b . "]"; 
} 
+0

你爲什麼不使用數組? –

回答

0

我認爲你應該使用{}運營商的PHP內容的動態無功代動態EVAL

for ($x = 1; $x <= 10; $x++) { 
    ${"answer" . $x} = $_POST['answer' . $x]; 

} 

http://php.net/manual/en/language.variables.variable.php

+1

您應該詳細說明該建議。 – Carcigenicate

+0

@Carcigenicate答案更新希望是有用的 – scaisEdge

+0

@Niklesh。 compatc是一個很好的功能..結果是一個數組我有OP請求的答案..似乎需要不同的變量.. – scaisEdge

0

我想包的$answer$x{},所以它會根據其他兩個變量的值創建變量

for ($x = 1; $x <= 10; $x++) { 
    {$answer . $x} = $_POST['answer' . $x]; 

    $b = "\$answer" . $x; 

    $a = $b . "= \$_POST[" . $b . "]"; 
} 
+0

謝謝你的回覆,只是想引起你的注意,它不喜歡{ $答案。 $ x}(第2行)給出錯誤:解析錯誤:語法錯誤,意外的'}'in – Casey