php - 将可变数量的变量传递给 PHP 中的类

标签 php variables

我需要传递可变数量的字符串来实例化不同的类。我总是可以对数组的大小进行切换:

switch(count($a)) {
case 1:
    new Class(${$a[0]});
    break;
case 2:
    new Class(${$a[0]}, ${$a[1]});
    break;
etc...

必须有更好的方法来做到这一点。如果我有一个字符串数组(“variable1”、“variable2”、“variable3”、...),我如何在不手动考虑每种可能性的情况下实例化一个类?

最佳答案

如果一定要这样做,可以试试:

$variable1 = 1;
$variable2 = 2;
$variable3 = 3;
$variable4 = 4;

$varNames = array('variable1', 'variable2', 'variable3', 'variable4');
$reflection = new ReflectionClass('A');
$myObject = $reflection->newInstanceArgs(compact($varNames)); 

class A
{
    function A()
    {
        print_r(func_get_args());
    }
}

关于php - 将可变数量的变量传递给 PHP 中的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2707442/

相关文章:

PHP JPEG 函数不工作

javascript - Codepen 在预期很少的项目时返回空数组

r - 如何计算R中多列的出现次数

php - nginx 真实客户端 ip 不起作用

php - 如何在 LIMIT 子句中应用 bindValue 方法?

php - 如何生成一个 9 位数字

php - 如何从 Nette 中的 NEON 文件中获取值?

c - 单独函数中的 Malloc 变量导致 "uninitialized in this function"

c++ - boost c++库源中nat的含义

java - 避免初始化变量以使代码仍然有效