Jump to content

why doesnt this variable become global


kevinkhan

Recommended Posts

ok iv set up a simple demo

 

this is the code im running

 

include('simple_html_dom.php');
include('config.php');
include('connect.php');
include('functions.php');
include($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'globalFunctions.php');

test();

echo "test variable = ".$test;

exit;

 

this is the function which is in globalFunctions.php which is two directories back ../../

 

	function test() {
$test = 10;

global $test;
}

 

how come when i run script i am not getting variable echoed

 

Link to comment
https://forums.phpfreaks.com/topic/247147-why-doesnt-this-variable-become-global/
Share on other sites

What's happening there is you are setting a local $test to 10, then it gets overwritten when you do "global $test;".  Declaring a variable global will actually overwrite any local copy you had in that function.

 

If you set the value after declaring it global then it'll work as you expect.

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.