Fira Posted September 24, 2006 Share Posted September 24, 2006 I've been learning php for a month, and have made decent progress, but seem to have stumbled upon this:I've an include file, named inc.php. Within it stores many variables, one of which is called $var.I've another file, named function.php. It includes inc.php. Within function.php is a function named fun(). Would Fun() be able to recognize $var without any direct declarations within the function itself? And what if Fun() was called from another file that includes function.php?Help is appreciated. Link to comment https://forums.phpfreaks.com/topic/21836-quick-question/ Share on other sites More sharing options...
alpine Posted September 24, 2006 Share Posted September 24, 2006 If you set $var as GLOBAL you can use it within the function fun() Link to comment https://forums.phpfreaks.com/topic/21836-quick-question/#findComment-97497 Share on other sites More sharing options...
Fira Posted September 24, 2006 Author Share Posted September 24, 2006 And global is only needed for usage of variables within functions?edit: Now I'm recieving the error[quote]Parse error: parse error, unexpected '=', expecting ',' or ';' in c:\WEB_ROOT\includes\include.php on line 13[/quote]Here's line 13 of include.php:[quote]global $epts = (mysql_result($result,0,'ep'));[/quote] Link to comment https://forums.phpfreaks.com/topic/21836-quick-question/#findComment-97499 Share on other sites More sharing options...
.josh Posted September 24, 2006 Share Posted September 24, 2006 try global $epts;$epts = mysql_result($result,0,'ep');also, unless you passed $result as an argument ot the function, you're going to have to declare it as a global too. Link to comment https://forums.phpfreaks.com/topic/21836-quick-question/#findComment-97505 Share on other sites More sharing options...
Barand Posted September 24, 2006 Share Posted September 24, 2006 Better than using globals - pass variables to the function as arguments and use return value.So define the function as [code]fun ($result) { $res = mysql_result($result,0,'ep'); return $res;}[/code]and call with$epts = fun($result); Link to comment https://forums.phpfreaks.com/topic/21836-quick-question/#findComment-97595 Share on other sites More sharing options...
Fira Posted September 25, 2006 Author Share Posted September 25, 2006 Problem solved. Thanks everyone. Link to comment https://forums.phpfreaks.com/topic/21836-quick-question/#findComment-97879 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.