2015-11-06 133 views
2

我試圖從$ day1Txt到$ day2Txt產生25個變量。將變量中的數字替換爲for循環中的另一個變量

如何將變量$day1Txt中的'1'轉換爲變量$i

for ($i = 1; $i < 25; $i++) { 

     $day1Txt = echo call_user_func('Day_'.$i.'_Offer', 'EMAIL_OFFER'); 

} 

我已嘗試過自己,但它的白色屏幕...

${'day'.$i.'Txt'} = echo call_user_func('Day_'.$i.'_Offer', 'EMAIL_OFFER'); 
+1

請擴展你的問題,你想達到什麼目的?如果它處於循環中,它將一直保持變化,直到循環的最後一次迭代。 – Script47

+1

使用數組而不是'$ i'作爲索引? – ekstroem

+0

我剛剛刪除了回聲,它沒有出現錯誤,但我不知道變量是否已存儲......所以這可能不是答案。 – Amesey

回答

1

這應該對你有幫助(刪除echo)。

for ($i = 1; $i < 25; $i++) { 

     ${"day".$i."Txt"} = call_user_func('Day_' . $i . '_Offer', 'EMAIL_OFFER'); 
    } 

如果你想看看你的函數中使用的所有變量是什麼,請使用get_defined_vars()

查看變態here

0

試試這個

for ($i = 1; $i < 25; $i++) { 

     ${"day".$i."Txt"} = call_user_func('Day_'.$i.'_Offer', 'EMAIL_OFFER'); 

} 

這就是所謂的Variable variables即可以設置和使用的變量名動態

+0

回聲破壞派對 –

+0

@NiranjanNRaju它好吧。有時間刪除評論 –