2010-08-23 6 views
1

Dans le code suivant, la variable ne semble pas être définie. Cela semble assez simple, mais pour une raison quelconque, cela me contrarie.Variable Scope Question PHP

function teasertext($string){ 
    $tstring = ""; 
    if (strlen($string)>9){ 
     $tstring .= substr($string,0,9) . "...."; 
    } 
    else 
    { 
     $tstring .= $string; 
    } 
} 
print $tstring; 
return $tstring; 
+0

Règle n ° 1, toujours en retrait constant. Il vous montrera pourquoi certaines choses ne fonctionnent pas (dans votre cas, les instructions 'print' et' return' sont en dehors du bloc fonction) ... – ircmaxell

Répondre

-1

J'ai placé les variables en dehors de la fonction. Erreur stupide.

2
print $tstring; 
return $tstring; 

est à l'extérieur du bloc fonction.

function teasertext($string){ 
    $tstring = ""; 
    if (strlen($string)>9){ 
     $tstring .= substr($string,0,9) . "...."; 
    } 
    else 
    { 
     $tstring .= $string; 
    } 
    print $tstring; 
    return $tstring; 
} 

Devrait renvoyer $ tstring correctement.