gpt4 book ai didi

PHP:调用函数时指定参数变量名称?

转载 作者:搜寻专家 更新时间:2023-10-31 21:11:10 24 4
gpt4 key购买 nike

这似乎是一个学术性或无用的话题,但我很好奇。

在使用 PHP 开发网页时,我经常需要调用带有多个参数的函数。我经常需要查找函数的规范(在 php.net 或我的包含文件中,如果它是我定义的函数)以提醒自己变量是什么,它们的顺序是什么,默认值是什么,等等.我想你们中的许多人都能理解这一点。

这样定义的函数:

function do_something_awesome ($people_array, $places_recordset, $num_cycles, $num_frogs,
$url = '?default=yes', $submit_name = 'default_submit_label') {
...
}

调用时,可能看起来像这样:

$result = do_something_awesome($names, $rsTowns, $c, $f);

我的问题是:在这样的函数调用期间,我想以一种提醒我哪个参数对应于每个变量的方式编写我的代码。如下调用函数是否合法?

$result = do_something_awesome($people_array = $names, $places_recordset = $rsTowns, 
$num_cycles = $c, $num_frogs = $f);

如果不是在 PHP 中,是否有其他语言可以通过这种方式进行方法调用?

最佳答案

回答你的第一个问题:

My question is this: I'd like to write my code in a way that reminds me of which argument corresponds to each variable, during function calls like this.

据我所知,许多 PHP 编码人员通过传入一个关联数组作为唯一参数来做到这一点。但是,您必须在被调用函数内部执行自己的变量检查。

$result = do_something_awesome(array(
'people_array' => $names,
'places_recordset' => $rsTowns,
'num_cycles' => $c,
'num_frogs' => $f
));

至于:

Is it ever legal to call a function as follows?

它不会导致任何 PHP 错误,但您有效地做的是:

$result = do_something_awesome( expression, expression, expression, expression );

参见:PHP Functions arguments

当您决定调换它们的顺序时,PHP 不会知道将 $people_array = ...$num_frogs = ... 放在它们相应的位置。此外,正如 DCoder 所说,这些表达式实际上发生在当前范围内,并且会在不让您知道的情况下更改任何预先存在的变量。

关于PHP:调用函数时指定参数变量名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19166068/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com