Три точки, при вызове метода или функции в PHP, позволяют передать массив так, словно каждый его элемент передаться как отдельный аргумент функции.
 
Такое будет проще понять на примере ниже.
     
		
	
		Сразу отмечу, что данный способ работает только в PHP версии 5.6.0 и выше.
Допустим у нас есть функция обертка 
test1
она получает на вход 3 параметра, что-то делает, а затем вызывает другую функцию
test2
на вход которой нужно передать те же самые значения, что и для 
test1
Самый простой вариант реализации:
 
function test1($x, $y, $z)
{
  // Do something
  test2($x, $y, $z);
}
 
 - но, такой вариант крайне неудобен. Может измениться количество передаваемых параметров, или их 20, и перечислять все некрасиво.
 
В таком случаи отличным решением будет использовать ...
 
function test1()
{
  $args = func_get_args();
  // Do something
  test2(... $args);
}
 
Количество аргументов можно изменить, т.к. это обычный массив, например, убираем первый:
 
function test1()
{
  $args = func_get_args();
  $sType = array_shift($args); 
  if($sType == 'test')
  {
    // Do something
  }
  test2(... $args);
}
 
Для поддержки старых версий php можно использовать такой вариант:
 
  if(version_compare(PHP_VERSION, '5.6.0', '>=')){
    $instance = new $class(...$args);
  } else {
    $reflect  = new ReflectionClass($class);
    $instance = $reflect->newInstanceArgs($args);
  }