2013-12-14 74 views
-3

在下面的代碼中,我如何在此語句之外訪問$ uname?如何訪問if語句之外的變量

$uname = ''; 
if ($row['ulogo'] == '1'){ 
    $ulogo = '../images/varsity logos/witsLogo.jpg'; 
    $uname = 'Wits'; 
    echo $uname; 
    } else if ($row['ulogo'] == '2'){ 
     $ulogo = '../images/varsity logos/UJ.png'; 
    $uname = 'University of Johannessburg'; 
    echo $uname; 
    } 
    echo $uname; 

解釋你downvote,如果有一個。

回答

2

初始化$ if塊外面UNAME:

$uname = ''; 
if ($row['ulogo'] == '1'){ 
    $ulogo = '../images/varsity logos/witsLogo.jpg'; 
    $uname = 'Wits'; 
    echo $uname; 
    } else if ($row['ulogo'] == '2'){ 
     $ulogo = '../images/varsity logos/UJ.png'; 
    $uname = 'University of Johannessburg'; 
    echo $uname; 
} 
echo $uname; 
0

我不是一個PHP的傢伙,所以糾正我,如果我錯了......但訪問$ UNAME,你有if語句之外在if語句之外聲明它,所以它在if語句之外的範圍內。現在$ uname只在if語句的範圍內,一旦離開if語句,變量就不再存在了。

+1

PHP有變量沒有塊範圍,因此它們是可用直到函數結束,一旦他們被分配一個值。 –

-1

首先定義全局變量

$ UNAME = ''; ($ row ['ulogo'] =='1'){ if

$ uname ='Wits';

echo $ uname;

} 否則如果($行[ 'ulogo'] == '2'){

$ulogo = '../images/varsity logos/UJ.png'; 

$ UNAME = 'Johannessburg大學';

echo $ uname; }

echo $ uname;

-1

您的代碼正在工作。我給例如,它的比賽

$row = 1; //temp variable 

if ($row == '1'){ 
    $uname = 'Wits'; 
} else if ($row == '2'){ 
    $uname = 'University of Johannessburg'; 
} 

echo $uname; 
-1

以上回答是正確的,我只是想我會添加其他way-

定義返回例如

function define_username() { 
    if ($row['ulogo'] == '1'){ 
     $ulogo = '../images/varsity logos/witsLogo.jpg'; 
     $uname = 'Wits'; 
    } else if ($row['ulogo'] == '2'){ 
     $ulogo = '../images/varsity logos/UJ.png'; 
     $uname = 'University of Johannessburg'; 
    }; 
    return $uname; 
}; 

echo define_username(); 
+0

爲什麼downvote? –

+2

你爲什麼問?堆棧溢出是爲了寫出[正確的]答案,而不是測試你的技能。 –

+0

我並不是在「測試自己的技能」,而是提供了另一種方式來做同樣的事情。當你開始時,它可以幫助你看到不同的做事方式。另外,這樣他可以訪問其他函數內的變量 –

0

一個函數內部的if語句如果$row['ulogo']不是12,您將收到未定義變量$ulogo$uname

試試這個:

if ($row['ulogo'] == '1') 
{ 
    $ulogo = '../images/varsity logos/witsLogo.jpg'; 
    $uname = 'Wits'; 
} 
elseif ($row['ulogo'] == '2') 
{ 
    $ulogo = '../images/varsity logos/UJ.png'; 
    $uname = 'University of Johannessburg'; 
} 
else 
{ 
    $ulogo = '../images/varsity logos/noimage.png'; 
    $uname = NULL; 
} 

echo $ulogo; 
echo $uname; 

或者

$logo = '../images/varsity logos/noimage.png'; 
$uname = NULL; 

if ($row['ulogo'] == '1') 
{ 
    $ulogo = '../images/varsity logos/witsLogo.jpg'; 
    $uname = 'Wits'; 
} 
elseif ($row['ulogo'] == '2') 
{ 
    $ulogo = '../images/varsity logos/UJ.png'; 
    $uname = 'University of Johannessburg'; 
} 

echo $ulogo; 
echo $uname;