2009-10-31 40 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

哪里函数的参数从何而来?如果可能的话,然后将它们包装到一个能够返回已修剪值的对象中。