Hallo, daar ben ik weer..

Ik was nooit zo bezig met het schrijven van functies, maar nu was het toch zover..
Ik vraag me alleen af, het moet toch ook mogelijk zijn om binnen een functie meerdere variables op te slaan om die vervolgens ergens anders weer te gebruiken?

iets als
function test($waarde1, $waarde2)
{
$nieuwewaarde1 = $waarde1 + 1;
$nieuwewaarde2 = $waarde2 + 8;
}

Zodat je de variables nieuwewaarde 1 en 2 weer kunt gebruiken??

Hoe zit dat dan?
<?php

function test($waarde1, $waarde2)
{
$nieuwewaarde1 = $waarde1 + 1;
$nieuwewaarde2 = $waarde2 + 8;

return array($nieuwewaarde1, $nieuwewaarde2);
}

$array = test(...);

$nieuwewaarde1 = $array[0];
$nieuwewaarde2 = $array[1];

//of

list($nieuwewaarde1, $nieuwewaarde2) = test(...);

?>

return $varnaam;

of als je wilt dat je de functie in een if() ding op wilt roepen

moet je in de functie iets zetten als
<?php
function naam($var){
if($var==1){
return true;
}
?>

edit:
Martijn was me voor
zijn script is netter
bedankt voor de supersnelle reactie jongens! Ik ga het doen als Martijn aangaf... Is het trouwens niet enigszins knullig hoe dit gerealiseerd moet worden binnen php? Waarom zouden ze niet gewoon het toekennen van variables binnen een functie toestaan?
omdat dan honderden variabelen komen, terwijl als php ze vergeet aan het einde van de functie hij sneller word, de variabele namen weer beschikbaar komen

want als ik bijvoorbeeld een teller variabeltje heb in een for lus die ik oproep in een functie wil ik niet dat ik gekloot krijg als ik ergens anders in het script nog een keer die zelfde naam gebruik voor een teller
In programmeer talen heb je temaken met scopes.

Je hebt:

global scope: buiten functie of methode
local scope: binnen een functie of methode

Als je een veriabele in local scope aanmaakt is deze niet beschikbaar in global scope andersom kan het wel.

Voorbeeld:
<?php

// variabele maken (global scope)
$variabele = 1023;

function test()
{
// $variabele van global naar local scope halen
// Dit is dus niet kopieeren.
global $variabele;

$variabele = $variabele + 10;
}

test();

// uitvoer is 1033
echo $variabele;

?>

Reageren