在PHP 4/5中是否可以在调用时指定一个命名的可选参数,跳过你不想指定的参数(比如在python中)?
就像是:
function foo($a,$b='', $c='') {
// whatever
}
foo("hello", $c="bar"); // we want $b as the default, but specify $c
Run Code Online (Sandbox Code Playgroud)
谢谢
我的PHP脚本中有一个非常简单的问题.定义了一个带有可变长度参数列表的函数:
function foo() {
// func_get_args() and similar stuff here
}
Run Code Online (Sandbox Code Playgroud)
当我这样称它时,它的工作正常:
foo("hello", "world");
Run Code Online (Sandbox Code Playgroud)
但是,我在数组中有我的变量,我需要将它们"单独"传递给函数的单个参数.例如:
$my_args = array("hello", "world");
foo(do_some_stuff($my_args));
Run Code Online (Sandbox Code Playgroud)
是否有任何do_some_stuff函数为我分割参数,所以我可以将它们传递给函数?
我需要将params(比如:)传递'param1', 'param2', 'param3'给方法......但我有一系列参数(如:)array('param1', 'param2', 'param3').如何将数组转换为参数?
function foo(array $params) {
bar(
// Here should be inserted params not array.
);
}
Run Code Online (Sandbox Code Playgroud) $array =
[0] => Array
(
[RevPReportPer] => 201606
[AcctDb] => A
[AcctNo] => 034
[AcctBusName] => test
[AcctDBAName] => test1
)
[1] => Array
(
[RevPReportPer] => 201606
[AcctDb] => A
[AcctNo] => 034
[AcctBusName] => test2
[AcctDBAName] => test2
)
[2] => Array
(
[RevPReportPer] => 201606
[AcctDb] => A
[AcctNo] => 036
[AcctBusName] => COMPUTER
[AcctDBAName] => computer2
)
Run Code Online (Sandbox Code Playgroud)
[034] => Array
(
[RevPReportPer] => Array
(
[0] => 201606
[1] => 201606
)
[AcctDb] …Run Code Online (Sandbox Code Playgroud) 我有一个像这样的阵列
array('item1', 'item2', 'item3');
Run Code Online (Sandbox Code Playgroud)
有人知道如何将每个项目单独传递给一个函数吗?
例如:
hello_world('item1', 'item2', 'item3');
Run Code Online (Sandbox Code Playgroud) 我一直在寻找,但不幸的是找不到任何有用的东西。
我有一个功能
function myFunc ($param1, $param2){ ...
Run Code Online (Sandbox Code Playgroud)
我需要调用该函数,但是我在数组中有参数
$params = [$param1, $param2]
Run Code Online (Sandbox Code Playgroud)
有什么办法做类似...[](如在Js中)的事情吗?
注意:我做不到
myFunc($params[$param1], $params[$param2]);
Run Code Online (Sandbox Code Playgroud)