Lernversuch: Functions

bandsite

Mitglied
Hi,
Ich versuche gerade dien Funktionsweise von php Functions zu erlernen. Ich habe dazu eine kleine Testfunktion geschrieben und versuche eine Variable per Return wieder aus dieser Funktion herauszubekommen, leider funktioniert das nicht.

PHP:
<?php

$name1 = "Name";
$status1 = "Status";

function category($name, $status)
{
$category_status = $name1.$status1;
return $category_status;
}


category($name1, $status1);
echo $category_status;
?>

Was verstehe ich da falsch ?

Danke, bandsite
 
Zuletzt bearbeitet:
Du kannst ausserhalb nicht auf die Variable $category_status zugreifen.
Aber
PHP:
echo category($name1, $status1);
sollte das gewuenschte Ergebnis bringen.
 
Yoar, das
PHP:
echo category($name1, $status1);
funktionieren würde verstehe ich auch, aber ich habe gelesen das der Return befehl einen Wert aus der Funktion rausgibt.

Ich habe das in einem anderen Thread gesehen:
PHP:
function machwas($j){
  $j=$j*5;
  return $j;
}
$j=5;
echo "erst ".$j."<br>";
$j=machwas($j);
echo "dann ".$j."<br>";
Da wird $j nach der Funktion verändert wieder erreichbar.

Danke, bandstre
 
Zuletzt bearbeitet:
bandsite hat gesagt.:
Yoar, das
PHP:
echo category($name1, $status1);
funktionieren würde verstehe ich auch, aber ich habe gelesen das der Reurn befehl einen Wert aus der Funktion rausgibt.
Natuerlich wird mit return ein Wert zurueckgegeben, aber keine Variable.

bandsite hat gesagt.:
Ich habe das in einem anderen Thread gesehen:
PHP:
function machwas($j){
  $j=$j*5;
  return $j;
}
$j=5;
echo "erst ".$j."<br>";
$j=machwas($j);
echo "dann ".$j."<br>";
Da wird $j nach der Funktion verändert wieder erreichbar.

Danke, bandsire
Das funktioniert weil Du $j an die Funktion uebergibst und auch das Ergebnis der Funktion in $j geschrieben wird.
PHP:
$j=machwas($j);
Wenn Du
PHP:
$x=machwas($j);
machst, dann ist $j unveraendert und der neue Wert steht in $x
 
Zurück