2017-04-05 2 views
0

ich eine Funktion geschrieben, dass ich dachte nicht mehr basisch sein können:Funktion gibt NULL zurück statt einen Wert

In functions.php:

function testowa() { 
$stringToReturn = "pies"; 
return $stringToReturn; 
} 

Dann versuche ich es in single.php zu nennen :

include_once ('functions.php'); 

testowa(); 
var_dump($stringToReturn); 

Und var_dump zeigt NULL an.

Wo könnte ich irgendetwas falsch machen?

+2

Undefi ned Variable. Informieren Sie sich über Variablenbereiche: http://php.net/manual/en/language.variables.scope.php – Daan

+0

| ... | => http://php.net/manual/en/function.error-reporting .php –

+0

include_once ('functions.php'); $ stringToReturn = testowa(); var_dump ($ stringToReturn); –

Antwort

3

Sie müssen die Antwort der Funktion einer Variablen zuweisen. Versuchen

$stringToReturn = testowa(); 
var_dump($stringToReturn); 
+0

Scheint, ich könnte zu dumm sein, Tutorials zu verstehen. Funktioniert wie ein Zauber, danke, lieber Herr. Ich werde Ihre Antwort als richtig markieren, sobald das System es mir erlaubt. –

0

@ Michał Skrzypek aktualisieren Sie Ihre function.php-Datei wie folgt:

<?php 
    function testowa() { 
     global $stringToReturn; 
     $stringToReturn = "pies"; 
     return $stringToReturn; 
    } 
+1

'global' ist ein schlechter Ansatz, bleib weg von der Verwendung. – Qirel

0

Einige Wege nach Rom.

Rückgabewert Version:

function testowa() { 
    return = "pies"; 
} 
print testowa(); 

Referenz Version

function testowa(&$refer) { 
    $refer = "pies"; 
} 
$refer = ''; 
testowa($refer); 
print $refer; 

Globale Version

function testowa() { 
    global $global; 
    $global = "pies"; 
} 
$global=''; 
testowa(); 
print $global; 

Aber nehmen Sie die Return Value Version und vermeiden Global Version

Verwandte Themen