2012-01-24 14 views

答えて

8

引数のように、メソッドの中で必要なものを渡す方が良いのではないでしょうか?

process($i); 

function process($i){ 
    echo $i; 
} 
1

また、関数内でグローバル変数を宣言する必要があります。

function process(){ 
    global $i; 
    echo $i; 
} 
+0

-1は答えが明らかに引数として渡されるときに 'global'の使用を示唆しています。 'global'と' $ GLOBALS'の正しい使い方はほとんどありませんが、これはほとんど間違いありません。特にユーザーが「Iveはグローバルを試したが、これは私が望むものではない」と言ったとき – DaveRandom

+0

それは残念だ。 – sathishkumar

1

私はこれをテストし、それが私のために私はあなたが、それは私はあなたが関数を定義している場合、他のブロックの後にそれを呼び出していないと思います

$i= 0; 

if(1==2){ 
echo "In this part"; 
$i = 1; 
} 
else{ 
echo "........"; 
$i = 2; 
} 

function process(){ 
global $i; 
echo $i; 
} 

process(); 
1

を働きたいと考えている方法を働きました。あなたはどこにでもそれを定義するが、単に

if(....){ 
echo "In this part"; 
$i = 1; 
} 
else{ 
echo "........"; 
$i = 2; 
}  

process(); 
1

それは$ _GLOBALSで動作するかのような場合は、他のブロックの後にこの関数を呼び出すことができます。 $var変数で再生してこのコードを試してください

<?php 

$i= 0; 

$var=0; 

if($var==0){ 
    echo "In this part"; 
$GLOBALS["i"]=1; 

} 
else{ 
    echo "........"; 
$GLOBALS["i"]=2; 
} 

process(); 

function process(){ 
    echo $GLOBALS["i"]; 
} 


?> 
関連する問題