我有一个函数php函数参数默认值 - 如何知道def。价值被应用了?
function my_func($id,$arg1='aaa',$arg2='bbb'){
if($arg1=='aaa'){
//means that def. value applied, real argument has not been provided
}
if($arg1=='bbb'){
//means that def. value applied, real argument has not been provided
}
}
检查我的值是默认的,我会做的一件事,如果不是 - 是另一回事。 但我的用户可以调用像
my_func($id,'aaa','bbb')
我的功能,所以他提供了真正的价值。我如何知道这些值在我的代码中是真实的,而不是默认值?
你是冲突你的问题本身?根据第一个你在第二个代码中给出的def值并不是真正的参数。所以请让你的问题更清楚。 –
你不能。使用'NULL'作为隐含值,并自己设置默认值。更重要的问题是为什么你想区分调用者或运行时提供的相同值。 – mario
谢谢!对不起,我不明白为什么我的问题本身就是相互冲突的。我需要知道什么时候在我的代码中有def值,并且当用户提供了所有参数,但值与默认值相同时。问题是def的逻辑是不同的。和真实的价值。如果两个边是相同的,那么这是一个问题。换句话说,my_func(10000)和my_func(10000,'aaa','bbb')会做完全不同的事情,但在my_func里面,没有任何信息是那些值默认或不是。我希望现在更清楚。谢谢 – avalon