我希望能夠輸出變量的名稱以及該變量的值。我的用例與調試情況很接近,但我實際上爲其他開發人員和管理人員構建了一個概念證明,所以我們可以討論輸入過濾等問題。無論如何...輸出變量名及其值(在函數中)
輸出HTML目前是一個表,但這應該不重要。當然,我可以打印出名稱,然後打印出HTML中的內容,但這會變得單調乏味,而且很容易出現輸入錯誤。我想要一個函數,我可以調用變量名稱或變量名稱作爲參數的字符串,並讓該函數生成適當的HTML用於顯示。這似乎不起作用。
這工作:
<tr><td>$variable</td><td><?php print $variable?></td></tr>
這不:
function rowFromVar($varname) {
$result = "<tr>";
$result .= "<td>\$$varname</td>";
$result .= "<td>" . $$varname . "</td>";
$result .= "</tr>";
return $result;
}
// now in the HTML...
<table><?php print rowFromVar("variable");?></table>
變量變量$$varname
總是空的。請注意,我將變量的名稱作爲字符串傳遞,而不是嘗試傳遞變量本身並使用它。我知道there be dragons那樣。相反,我試圖將變量的名稱作爲字符串傳遞,然後使用變量變量(是的,我知道)返回原始變量的值。這看起來不起作用,我敢打賭這是一個範圍問題。
有沒有什麼好方法可以完成我要找的東西?
您的原始變量超出了函數內的範圍,您還需要傳遞實際變量以及 –
爲什麼使用double $$?在這種情況下$ varname而不是$$ varname –
您是否曾嘗試在函數的開頭添加'global $$ varname;'? – megaflop