【发布时间】:2012-06-14 17:30:07
【问题描述】:
在 php 中,我们可以像这样将默认参数传递给函数
function func_name(arg1,arg2=4,etc...) {
但据我了解,我们无法传递函数调用,因此这是非法的:
function func2_name(arg1,arg2=time(),etc...) {
所以当我想做一个函数值时(想象像时间函数,值不能在运行时之前知道)我必须做一些像这样的混乱工作:
function func3_name(arg1,arg2=null,etc...) {
if(arg2==null) arg2 = time();
我想知道是否有人知道一种更好的方法,一种将函数调用值作为默认参数传递给 php 的更简洁的方法?谢谢。
还有什么根本原因在 php 语言设计中不允许函数调用作为默认参数(比如它在预处理中做了什么特殊的事情?)或者这会成为未来版本的一个特性吗?
【问题讨论】:
-
查看this similar question 的替代方案。
标签: php function language-design default-value