Jump to content

Archived

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

johnnyk

Globals

Recommended Posts

So you can call a global variable from a function:

$var = 'hey';
function whatever(){
  echo $GLOBALS['hey'];
}


BUT, how would you do the reverse, something like:

function whatever(){
  $var2 = 'hey';
}

Now say after that I want to echo $var2, is that possible?

Share this post


Link to post
Share on other sites
<?
function whatever() {
$var2 = "hi";
return $var2;
}
echo whatever();
?>

is the only way i know of to do what youre asking... i dont mess with functions very often though so theres prolly a better way...

Share this post


Link to post
Share on other sites
You can either return it as corbin has shown above or make your var2 var global like so:
[code]function whatever2()
{
    global $var2;

    $var2 = "hi";
}
// call our function, first
whatever2();

// now we will be able to use our variable from the function
echo $var2;[/code]

By I'd recommend you to use return rather than making your variables global. If you are going to be returning 2 or more variables. I'd return it as an array, and store the array in a variable, like so:
[code]<?php

function getVars()
{
    $var = 'hello';
    $var2 = 'hey';
    $var3 = 'bye';

    return array($var, $var2, $var3);
}

$vars = getVars();

echo '<pre>' . print_r($vars, true) . '</pre>';
?>[/code]

Share this post


Link to post
Share on other sites

×

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.