Gå til innhold

Funksjoner - Hvordan retunere en verdi?


Anbefalte innlegg

Videoannonse
Annonse

Ved bruk av return som vist over: Return values

 

Du kan også bruke referanser(?) Passing parameters by reference og Returning parameters by reference

 

Eller ved bruk av global variabel: Overriding variable scope with the GLOBALS array

PHP
<?php

$aa=1;

 

function inc_a()

{

  global $aa;

  ++$aa;

}

inc_a();

echo  $aa//$aa==2

?>

 

Edit: Feil rettet i koden over, som påpekt i posten under.

Endret av crowly
Lenke til kommentar

crowly: I eksempelet ditt gir ikke inc_a() noen returverdi, og echo av inc_a() gir derfor ingen output. Tror du kanskje mente dette i eksempelet ditt:

<?php
$aa = 1;

function inc_a()
{
   global $aa;
   ++$aa;
}

inc_a();

echo $aa; // output: 2
?>

 

Et muligens bedre eksempel (hvor vi styrer unna globale variabler og alle de negative konsekvensene de fører med seg):

<?php
$a = 1;

function inc_a(&$a)
{
   ++$a;
}

inc_a($a);

echo $a; // output: 2
?>

Lenke til kommentar
Et muligens bedre eksempel (hvor vi styrer unna globale variabler og alle de negative konsekvensene de fører med seg):

 

Dette linket jeg til i posten over, med " ... parameters by reference", men la ikke med noen eksempler da det er noen gode på sidene det ble linket til. Er det med bruk av globale variabler også, så jeg kunne ha spart meg det eksemplet også ;)

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...