2009-10-31 53 views
0

函數頭看起來像這樣修剪參數的函數頭

function doit($theparam){ 
    //$theparam is untrimmed 

    $theparam = trim($theparam); 

    //$theparam is now trimmed 

} 

是否有可能做的第一線本身的微調?我試過那兩個,但都沒有工作。

function doit(trim($theparam)){ 
    //access trimmed version 
} 

function doit($theparam = trim($theparam)){ 
    //access trimmed version 
} 

我有幾個功能,都通過修剪來開始他們的工作。如果我能用更少的路線做到這一點,我會很開心。

回答

1

它不可能在PHP 4.x或5.2。 您不能將函數用作另一個函數的默認參數。 5.3支持閉合,看起來很像片段抖動寫道。

如果在同一個類中有幾個方法需要特殊格式的字符串,那麼爲此創建一個實用程序函數是有意義的。 如果您稍後發現需要額外的格式,則只需更改單個方法即可。

0

只要這樣做。

function doit($theparam){$theparam=trim($theparam); 
} 

;-)只是開玩笑。我不認爲有辦法做到這一點內功能參數大括號

1

不,你不能這樣做。

PS:你爲什麼要這樣做?

編輯:爲了節省空間,你可以做這樣的事情:

function doit($theparam) { $theparam = trim($theparam); 
    //access trimmed version 
} 
+0

只是一個節省空間的東西。我有10個函數,都以這一行開始,我認爲代碼可以被整理。 – drummer 2009-10-31 14:42:09

0

哪裏函數的參數從何而來?如果可能的話,然後將它們包裝到一個能夠返回已修剪值的對象中。