Как вызвать свойство PHP из строки, хранящейся в переменной

Я использую пакет maatwebsite / excel и хотел бы динамически передавать другой тип файла в качестве второго параметра.
Смотрите функцию здесь

Ниже находится переменная:

$fileType = $request->input('fileType', 'xlsx');
$writerType = Excel::$fileType;

Но я получаю ошибку:

Доступ к необъявленным статическим свойствам: Maatwebsite \ Excel \ Excel :: $ fileType

Я пытаюсь использовать фигурные скобки, но не работает:

Excel::${"fileType"};

Как передать переменную? Спасибо!

0

Решение

Вы правильно передали переменную. Но ваша проблема в том, что Maatwebsite \ Excel \ Excel содержит константу XLSX, и это не свойство. Константы могут быть доступны статически Excel :: XLSX или динамически с помощью постоянная функция:

     $fileType = $request->input('fileType', 'xlsx');
$writerType = constant('Excel::' . strtoupper($fileType));
0

Другие решения

 return Excel::create('PatientList',function($excel) use ($variable){

$excel->sheet('List',function($sheet) use ($variable){
$sheet->fromArray($variable);
});

})->download($type);

используйте как это при загрузке файла .pass $type с вашей точки зрения.

0

По вопросам рекламы [email protected]