2011-06-01 35 views
0

如何將$_GET變量傳遞給函數?

$_GET['TEST']='some word'; 
public function example() {  
    //pass $_GET['TEST'] into here 
} 

當我嘗試訪問我的函數中的$_GET['TEST']時,它是空的。

+4

聲明該變量的值聲明函數這是有缺陷的。這不是一種功能,而是一種方法......你的班級在哪裏? – 2011-06-01 10:51:14

+2

我認爲你應該瞭解php變量,php函數和一般OOP的基礎知識。 – 2011-06-01 10:52:25

回答

4

$_GET陣列是脈動熱管的superglobals因此可以用它作爲-是函數內的一個:

public function example() {  
    print $_GET['TEST']; 
} 

通常,傳遞一個變量(參數),如下所示:

public function example($arg1) {  
    print $arg1; 
} 
example($myNonGlobalVar); 
+0

這是最好的答案 – 2011-06-01 11:02:46

0

首先 - 你不應該設置任何東西超全球($_GET,$_POST等)。

所以我們把它轉換爲:

$test = 'some word'; 

如果你想將它傳遞給函數只是這樣做:

function example($value) {  
    echo $value; 
} 

而調用這個函數有:

example($test); 
0
function example ($value) { 
    $value; // available here 
} 
example($_GET['TEST']); 
0
function example($parameter) 
{ 
    do something with $parameter; 
} 

$variable = 'some word'; 

example($variable); 
1

如果這是一個功能,而不是一個對象的方法,那麼你傳遞參數,像這樣

function example($test) { 
    echo $test; 
} 

然後調用像這樣

$_GET['test'] = 'test'; 
example($_GET['test']); 

輸出是

test 

該功能但是,如果這是一個對象,你可以這樣做

class Test { 

    public function example($test) { 
     echo $test; 
    } 
} 

,你會再調用它像這樣

$_GET['test'] = 'test'; 
$testObj = new Test; 
$testObj->example($_GET['test']); 

和輸出應該是

test 

我希望這可以幫助你。

0

只需通過

通過

function employee($name,$email) { 
// function statements 
} 

$name = $_GET["name"]; 
$email = $_GET["email"]; 

調用函數由

employee($name,$email);