Access a global variable in a PHP function

前端 未结 9 1995
感动是毒
感动是毒 2020-11-29 05:33

According to the most programming languages scope rules, I can access variables that are defined outside of functions inside them, but why doesn\'t this code work?



        
9条回答
  •  一向
    一向 (楼主)
    2020-11-29 06:04

    It is not working because you have to declare which global variables you'll be accessing:

    $data = 'My data';
    
    function menugen() {
        global $data; // <-- Add this line
    
        echo "[" . $data . "]";
    }
    
    menugen();
    

    Otherwise you can access it as $GLOBALS['data']. See Variable scope.

    Even if a little off-topic, I'd suggest you avoid using globals at all and prefer passing as parameters.

提交回复
热议问题