PHP: Как создать экземпляр класса с аргументами из другого класса

Я нахожусь в ситуациях, когда мне нужно создать экземпляр класса с аргументами из экземпляра другого класса. Вот прототип:

//test.php

class test
{
    function __construct($a, $b, $c)
    {
        echo $a . '<br />';
        echo $b . '<br />';
        echo $c . '<br />';
    }
}

Теперь мне нужно создать экземпляр класса выше, используя класс нижеЦБС функция:

class myclass
{
function cls($file_name, $args = array())
{
    include $file_name . ".php";

    if (isset($args))
    {
        // this is where the problem might be, i need to pass as many arguments as test class has.
        $class_instance = new $file_name($args);
    }
    else
    {
        $class_instance = new $file_name();
    }

    return $class_instance;
}
}

Теперь, когда я пытаюсь создать экземпляр тестового класса, передавая ему аргументы:

$myclass = new myclass;
$test = $myclass->cls('test', array('a1', 'b2', 'c3'));

Выдает ошибку: отсутствует аргумент 1 и 2; передается только первый аргумент.

Это прекрасно работает, если я создаю экземпляр класса, у которого нет аргументов в функции конструктора.

Для опытных разработчиков PHP выше не должно быть большой проблемой. Пожалуйста помоги.

Спасибо

Ответы на вопрос(5)

Ваш ответ на вопрос