<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/language.functions.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'de',
  ),
  'this' => 
  array (
    0 => 'functions.returning-values.php',
    1 => 'R&uuml;ckgabewerte',
    2 => 'R&uuml;ckgabewerte',
  ),
  'up' => 
  array (
    0 => 'language.functions.php',
    1 => 'Funktionen',
  ),
  'prev' => 
  array (
    0 => 'functions.arguments.php',
    1 => 'Funktionsparameter und -argumente',
  ),
  'next' => 
  array (
    0 => 'functions.variable-functions.php',
    1 => 'Variablenfunktionen',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'de',
    'path' => 'language/functions.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="functions.returning-values" class="sect1">
   <h2 class="title">Rückgabewerte</h2>
   <p class="para">
    Werte können mit der optionalen return-Anweisung zurückgegeben werden. Es
    können Variablen jeden Typs zurückgegeben werden, auch Arrays oder
    Objekte. Dies beendet die Funktion sofort und die Kontrolle wird wieder an
    die aufrufende Zeile zurückgegeben. Für weitere Informationen siehe
    <span class="function"><a href="function.return.php" class="function">return</a></span>.
   </p>
   <blockquote class="note"><p><strong class="note">Hinweis</strong>: 
    <p class="para">
     Wird <span class="function"><a href="function.return.php" class="function">return</a></span> weggelassen, dann wird der Wert <strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong>
     zurückgegeben.
    </p>
   </p></blockquote>

   <div class="sect2">
    <h3 class="title">Einsatz von return</h3>
    <p class="para">
     <div class="example" id="example-1">
      <p><strong>Beispiel #1 Einsatz von <span class="function"><a href="function.return.php" class="function">return</a></span></strong></p>
      <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #007700">function </span><span style="color: #0000BB">quadrat</span><span style="color: #007700">(</span><span style="color: #0000BB">$zahl</span><span style="color: #007700">)<br />{<br />    return </span><span style="color: #0000BB">$zahl </span><span style="color: #007700">* </span><span style="color: #0000BB">$zahl</span><span style="color: #007700">;<br />}<br />echo </span><span style="color: #0000BB">quadrat</span><span style="color: #007700">(</span><span style="color: #0000BB">4</span><span style="color: #007700">);   </span><span style="color: #FF8000">// gibt '16' aus.<br /><br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
      </div>

     </div>
    </p>
    <p class="para">
     Es ist nicht möglich, mehrere Werte von einer Funktion zurückzugeben. Ein
     ähnliches Resultat kann man aber durch die Rückgabe eines Arrays
     erreichen.
    </p>
    <p class="para">
     <div class="example" id="example-2">
      <p><strong>Beispiel #2 Rückgabe mehrerer Werte als Array</strong></p>
      <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #007700">function </span><span style="color: #0000BB">kleine_zahlen</span><span style="color: #007700">()<br />{<br />   return [</span><span style="color: #0000BB">0</span><span style="color: #007700">, </span><span style="color: #0000BB">1</span><span style="color: #007700">, </span><span style="color: #0000BB">2</span><span style="color: #007700">];<br />}<br /></span><span style="color: #FF8000">// Bei der Umstrukturierung von Arrays wird jedes Element des Arrays<br />// einzeln erfasst.<br /></span><span style="color: #007700">[</span><span style="color: #0000BB">$null</span><span style="color: #007700">, </span><span style="color: #0000BB">$eins</span><span style="color: #007700">, </span><span style="color: #0000BB">$zwei</span><span style="color: #007700">] = </span><span style="color: #0000BB">kleine_zahlen</span><span style="color: #007700">();<br /><br /></span><span style="color: #FF8000">// Vor 7.1.0 ist die einzige gleichwertige Alternative die Verwendung<br />// des list()-Konstrukts<br /></span><span style="color: #007700">list(</span><span style="color: #0000BB">$null</span><span style="color: #007700">, </span><span style="color: #0000BB">$eins</span><span style="color: #007700">, </span><span style="color: #0000BB">$zwei</span><span style="color: #007700">) = </span><span style="color: #0000BB">kleine_zahlen</span><span style="color: #007700">();<br /><br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
      </div>

     </div>
    </p>
    <p class="para">
     Um aus einer Funktion eine Referenz zurückzugeben, muss der
     Referenz-Operator &amp; sowohl in der Funktionsdeklaration, als auch bei
     der Zuweisung des zurückgegebenen Wertes verwendet werden:
    </p>
    <p class="para">
     <div class="example" id="example-3">
      <p><strong>Beispiel #3 Rückgabe von Referenzen aus Funktionen</strong></p>
      <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #007700">function &amp;</span><span style="color: #0000BB">returniere_referenz</span><span style="color: #007700">()<br />{<br />    return </span><span style="color: #0000BB">$einereferenz</span><span style="color: #007700">;<br />}<br /><br /></span><span style="color: #0000BB">$neuereferenz </span><span style="color: #007700">=&amp; </span><span style="color: #0000BB">returniere_referenz</span><span style="color: #007700">();<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
      </div>

     </div>
    </p>
    <p class="simpara">
     Weitere Informationen über Referenzen sind im Kapitel
     <a href="language.references.php" class="link">Referenzen in PHP</a> zu finden.
    </p>
   </div>
  </div><?php manual_footer($setup); ?>