Я пытался следовать руководству с этого сайта http://culttt.com/2015/10/26/generating-pdfs-from-html-and-phantomjs где вы можете создавать PDF-файлы, используя PhantomJS.
Тем не менее, авторский код включает создание класса PDFWriter, который в своем конструкторе принимает Filesystem $storage
,
Поэтому, когда я хочу использовать этот класс для создания PDF, я не уверен, чем кормить автора?
$pdf = new PDFWriter( /* ?? */ );
$pdf->write('template.file', ['data']);
Есть какие-нибудь подсказки? Я должен был реализовать это на установке Laravel 4.2.
Автор вводит Illuminate\Filesystem\Filesystem
используя новый контракт Laravel 5 Вы можете разрешить тот же экземпляр, используя app()
метод в Laravel 4:
$filesystem = app('Illuminate\Filesystem\Filesystem');
$pdf = new PDFWriter($filesystem);
Хотя, если вы используете этот метод внутри контроллера, я бы предложил вставить его в ваш конструктор.
use Illuminate\Filesystem\Filesystem;
class PdfController extends Controller
{
/**
* @var Filesystem
*/
protected $filesystem;
/**
* Constructor.
*
* @param Filesystem $filesystem
*/
public function __construct(Filesystem $filesystem)
{
$this->filesystem = $filesystem;
}
public function create()
{
$pdf = new PDFWriter($this->filesystem);
$pdf->write('template.file', ['data']);
}
}
Других решений пока нет …