2013-05-08 177 views
-2

而不是使用$ _POST ['var']我想通過他們的名字獲得所有全局變量。如何獲得所有全局變量

又例如我有<input type='text' name='surname'>當我提交表單我想使用get(「姓」),而不是$ _ POST [「姓」]所以我試圖做一個函數,但這個不起作用

function get($var){ 
    $global = $GLOBALS["$var"] ; 
    return $global; 
} 

我真的不明白爲什麼。

我要回到我notice: Undefined index: nom in C:\wamp\www\cyb.fr\lib_php\librairie.php on line 23幫助

anykind將非常感激

+4

怎樣的功能爲基礎的方法任何不是通常的'$ _POST'方法更好,比節省幾個字符等?處理肯定不會更快。 – Blazemonger 2013-05-08 13:24:51

+2

Globals!== POST。 – deceze 2013-05-08 13:27:36

+0

好的我不知道是否有一個我可以得到職位? – 2013-05-08 13:28:05

回答

0

您可以使用下面的功能:

function post_value($key=''){ 
if($key!='') { 
    if(!is_array($_POST[$key])) 
      return trim($_POST[$key]); 
     else 
      return $_POST[$key]; 

} 
else 
    return; 
} 
+2

這可能是這個非問題最笨拙的解決方案;當然它已經被接受了。 – deceze 2013-05-08 13:51:53

2

爲什麼不

function get($var) { 
    return $_POST[$var]; 
} 

+0

它返回我同樣的錯誤 – 2013-05-08 13:27:40

+1

錯誤說'nom'未找到,但您的示例使用'姓氏'... – mb14 2013-05-08 13:29:40

+0

一個函數調用「'get'」來返回POST正文值...就像默認的PHP命名不是已經不夠混亂了。 ;-P儘管如此,仍然是正確的答案。 – deceze 2013-05-08 13:32:15

1

像張貼任何請求數據,除非你有register_globals指令在php.ini打開得到的是沒有註冊爲全局變量。我敢打賭說它沒有打開,它不應該打開。由於PHP 4.x有時默認爲關閉。

替代

function get($variable) { 
    return isset($_REQUEST[$variable]) 
     ? $_REQUEST[$variable] : null; 
}