为什么在调用函数后不更改变量值

时间:2019-02-11 11:37:59

标签: php

如果变量是在函数外部定义的,并且又在函数内部定义的,那么为什么调用函数后变量的值没有更改。

$a = 12;

Function abc()
{
    $a=15; 
    echo $a;
}

abc(); 
echo $a;

输出:

1512

为什么不呢?

1515

2 个答案:

答案 0 :(得分:1)

您应该使用global关键字(或有时使用$GLOBALS['a']

http://php.net/manual/en/language.variables.scope.php

$a=12;

function abc(){
    global $a;
    $a=15; 
    echo $a;
}

abc(); 
echo $a;

答案 1 :(得分:1)

由于变量范围仅限于函数体,因此,如果要使用上述变量,可以将变量设置为全局变量,例如:

=(J10+K10-D10-E10)*24