2
我希望能夠創建一個函數來檢查POST
或GET
數據。我想叫它像這樣:如何通過變量變量訪問預定義的變量
hasData("POST");
這將返回true或false,根據傳遞的預定義變量名稱是否不包含數據,很明顯。
我想我可以做這樣的事情:
function hasData($t = 'POST'){
$varType = "_" . strtoupper($t);
return !empty(${$varType});
}
$_POST
顯然是不確定的,當我不喜歡這樣,但得到的變量,像這樣:
${"_POST"}
不工作一個問題。
我使用了與此相關的文檔和found a comment。我在想:
- 首先,爲什麼我不允許將一個變量傳遞到大括號中以獲取預定義變量的值?
- 其次,是否有一個更優雅的方式去比這個(如評論中所建議的)首先在全局聲明變量?
是否有原因不使用$ _REQUEST? – 2014-09-26 17:21:28
我試圖想到一個這樣做的原因。 「空($ _POST)」不是一個更簡單的方法來完成你正在做的事情嗎?特別是因爲這些選項實際上只是$ _GET和$ _POST,因爲$ _REQUEST是兩者的組合。 – Brian 2014-09-26 17:21:30
@Brian這是我想用我自己的類來檢查這些變量的更大圖片的一部分 - 類將具有其他功能,我寧願在一個地方使用「empty()」。你對「$ _REQUEST」做了一個很好的說明 - 我沒有想到,我主要爲此感到好奇,爲什麼這是不可行的。 – George 2014-09-26 17:27:04