2016-11-18 4 views
0

На мой PHP FPDF сценарийAWS S3 PNG изображения не работает с FPDF

<?php 
... 
$mypdf->Image("http://s3-ap-southeast-1.amazonaws.com/mybucket/path/to/the/image/file.png", null, null, 150, 150); 
... 
?> 

и приводит к ошибкам. Однако, когда я пытаюсь сделать то же самое, но с другим изображением, не размещенным на S3, он работает.

Как это возможно, что S3 не работает с FPDF?

+0

Какую ошибку вы получаете именно? –

ответ

1

У меня была такая же проблема, и я после некоторого рытья в источнике fpdf выяснил, что проблема была с fopen(). Чтобы использовать этот метод с изображением S3, вам необходимо использовать S3 Stream Wrapper. Для этого требуется AWS SDK for PHP, или вы также можете свернуть свой собственный, если захотите.

Мой код выглядит следующим образом

$credentials = new Aws\Credentials\Credentials('KEY','SECRET'); 
$client = new Aws\S3\S3Client([ 
    'version'=>'latest', 
    'region'  => 'REGION', 
    'credentials' => $credentials 
]); 
$client->registerStreamWrapper(); 

// Link to file 
$url = 's3://bucket/key'; 

// add background image 
$fpdf->Image($url, 0, 0, $fpdf->GetPageWidth(), $fpdf->GetPageHeight()); 

 Смежные вопросы

  • Нет связанных вопросов^_^