Υποστήριξη για το The Movie Database

Hi,

I'm having trouble reading a few of the original images with PHP. The image files download just fine, but I can not read the JPEG format.

The following PHP code fails.

$res = imagecreatefromstring(file_get_contents('http://image.tmdb.org/t/p/original/xz9xKoiKTUBjodNV1Evn9CAuMyq.jpg'));
var_dump($res === false);

outputs: false

If I attempt to download using one of the re-sized images, then it works fine.

$res = imagecreatefromstring(file_get_contents('http://image.tmdb.org/t/p/w1280/xz9xKoiKTUBjodNV1Evn9CAuMyq.jpg'));
var_dump($res === false);

outputs: true

This has started to happen only recently. I was wondering if anything with the processing of the images has changed.

p.s. All the images load fine in a browser (i.e. Chrome).

3 απαντήσεις(στη σελίδα 1 από 1)

Jump to last post

Nothing really comes to mind. As per the other thread about webp, I would make sure you're getting the jpeg version (you should be, but just for a sanity check). So check the headers.

Webp aside, check the headers make sure everything looks good and normal. It could be something temporary as well.

Thanks for the response, and from what I can tell PHP 7.1.1 supports WebP and that shouldn't be the issue (but I'll need to verify that).

I thought the re-sized images would resolve this problem and switched from downloading the originals to those, but this has not helped the problem.

Today I'm seeing about 5% of images failing. Out of 1500 downloaded there are 60 that can't be read. I currently don't log the headers on the response, but I'll add that feature later today.

Now this has only been on my dev machine. I've not deployed to my production in a while, but this is in Ubuntu 14 bash with PHHP 7.1.1 on Windows 10.

What stack are you running? Is it PHP based?

Okay it turns out that all the problem images are WebP. It's also indicated in the headers that it's WebP.

I know PHP can read WebP but I guess the imagecreatefromstring method doesn't support it. I'll see if I can figure out a work around.

Does your server send JPEG if I change the "Accept:" header of the request to image/jpeg only, or will it still send WebP?

Δεν μπορείτε να βρείτε κάποια ταινία ή σειρά; Συνδεθείτε για να τη δημιουργήσετε.

Σε όλες τις σελίδες

s Εστίαση στη μπάρα αναζήτησης
p Άνοιγμα μενού προφίλ
esc Κλείσιμο ανοιχτού παραθύρου
? Άνοιγμα παραθύρου συντομεύσεων πληκτρολογίου

Στις σελίδες μέσων

b Επιστροφή στην προηγούμενη σελίδα(ή στην αρχική σελίδα όταν είναι εφικτό)
e Μετάβαση στη σελίδα επεξεργασίας

Στις σελίδες κύκλων σειρών

(Δεξιό βέλος) Μετάβαση στον επόμενο κύκλο
(Αριστερό βέλος) Μετάβαση στον προηγούμενο κύκλο

Στις σελίδες επεισοδίων σειρών

(Δεξιό βέλος) Μετάβαση στο επόμενο επεισόδιο
(Αριστερό βέλος) Μετάβαση στο προηγούμενο επεισόδιο

Σε όλες τις σελίδες εικόνων

a Άνοιγμα παραθύρου προσθήκης εικόνας

Σε όλες τις σελίδες επεξεργασίας

t Άνοιγμα επιλογέα μετάφρασης
ctrl+ s Υποβολή φόρμας

Στις σελίδες συζήτησης

n Δημιουργία νέας συζήτησης
w Ρύθμιση κατάστασης παρακολούθησης
p Ρύθμιση ως δημόσια/ιδιωτική
c Ρύθμιση ανοίγματος/κλεισίματος
a Άνοιγμα δραστηριότητας
r Απάντηση στη συζήτηση
l Μετάβαση στην τελευταία απάντηση
ctrl+ enter Υποβολή μηνύματος
(Δεξιό βέλος) Επόμενη σελίδα
(Αριστερό βέλος) Προηγούμενη σελίδα

Ρυθμίσεις

Θέλετε να αξιολογήσετε ή να προσθέσετε αυτό το στοιχείο σε μια λίστα;

Σύνδεση