英文:
How do I use Variable Values Stored Within Variable Values as function arguments?
问题
我试图将所有的函数参数收集到一个单一变量中,这样我就可以使用这个单一变量代替将所有参数输入到函数中。
以下是我迄今为止为了尝试实现这一目标所做的工作,但目前还没有成功。
存储所有变量值的变量:
$bindargs = "$var1, $var2, $var3";
我试图将上述变量作为3个单独的参数传递给以下函数:
function($bindargs);
我希望上述代码运行与以下代码相同:
function($var1, $var2, $var3);
英文:
I'm trying to gather all function arguments within a single variable so I can use the single variable instead of entering all arguments into the function.
Below is what I've done so far to try to achieve this and it hasn't been successful.
Variable that stores all variable values together:
$bindargs = "$var1, $var2, $var3";
Function which I am trying to pass above variable as 3 separate arguments:
function($bindargs);
I want above to run the same as below:
function($var1, $var2, $var3);
答案1
得分: 1
Solution: 通过使用数组
$bindargs = array('var1' => $var1, 'var2' => $var2, 'var3' => $var3);
现在将这个 $bindargs
传递给函数并像这样使用
function functionname($bindargs){
$var1 = $bindargs['var1'];
$var2 = $bindargs['var2'];
$var3 = $bindargs['var3'];
// 现在您可以使用您希望对这些变量执行的操作的逻辑
}
英文:
Solution: by using array
$bindargs = array('var1'=>$var1,'var2'=>$var2,'var3'=>$var3);
now pass this $bindargs to the function and use like this
function functionname($bindargs){
$var1 = $bindargs['var1'];
$var2 = $bindargs['var2'];
$var3 = $bindargs['var3'];
// now you can use your logic to perform the action on the variables which you want
}
答案2
得分: 1
这是代码示例,不需要翻译。
英文:
Well, I suppose you could do something like this, with an array:
<?php
function func($a, $b, $c) {
echo $a."\n";
echo $b."\n";
echo $c."\n";
}
$bindargs = ['a','b','c'];
func(...$bindargs);
I don't see why you'd want to. You lose type hinting on your arguments, and named arguments, and this all seems to me like a way just to obfuscate the code and make it difficult for whoever comes after you.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论