2010-08-23 228 views
1

在下面的代碼中,變量似乎沒有被設置。似乎很簡單,但由於某種原因,這令我煩惱。變量範圍問題PHP

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

規則1,始終縮進。它會告訴你爲什麼有些東西不起作用(在你的情況下,'print'和'return'語句在功能塊之外)... – ircmaxell 2010-08-23 16:16:27

回答

-1

我把變量放在函數之外。愚蠢的錯誤。

2
print $tstring; 
return $tstring; 

位於功能塊之外。

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

應正確返回$ tstring。