我有一个全局变量在 if 语句中被更改然后在 else 中访问,但它没有相同的值并且失去了它的值:
global $reqUserID;
if ($_SERVER['REQUEST_METHOD'] == 'POST'){
if (isset($_POST['viewReq'])) {
$requests = new requests();
$results = $requests->getRequest($_POST['reqID']);
$result = mysql_fetch_array($results, MYSQL_ASSOC))
$GLOBALS['reqUserID'] = $result['USER_ID']; //CORRECT VALUE HERE
}
else if (isset($_POST['approveBtn'])) {
$var1 = $GLOBALS['reqUserID'];
$sql = "SELECT EMAIL FROM user_info WHERE USER_ID='$var1'";//SOME OTHER VALUE HERE
[...]
}
最佳答案
如果你在'if'子句中设置了一个值,那么'else'子句将不会被执行,反之亦然。因此,您只能在语句的第二次迭代中找到“else”子句。然后您需要了解变量在哪里定义,以及它们何时变为未定义。
关于php - 在 if 条件下更改全局变量值,然后在 else 中访问该值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6540646/