2012-05-13 8 views
5

próbuję ustalić, czy powinienem po prostu bezpośrednioPHP header image wyjście typu vs Lokalizacja przekierować do pliku binarnego w fs

1) mają PHP pobrać obraz binarny i wyjścia (z nagłówka jako obraz typu) image np:

/* $image = ... insert curl function to fetch image */ 

header('Content-Type: image/png'); 

echo $image; 

lub jeśli miałbym

2) nagłówek przekierowanie do ścieżki URL obrazu

header('Location: http://domain.com/pathtoimage/image.png'); 

Wstępne pytania:

W pierwszym, to, że kwota do dowolnego napowietrznych z PHP konieczności mieć obraz w pamięci, aby to wyjście?

Po drugie, czy spowoduje to błędy na klientach, które w jakiś sposób nie mogą śledzić przekierowania nagłówka PHP?

+0

Po prostu zrobiłem coś podobnego i byłbym zainteresowany, gdyby ktokolwiek przeprowadził jakiekolwiek testy (w końcu mogę zrobić własne). Na razie przeszedłem z przekierowaniem, w ten sposób jest mniejsza szansa na złamanie czegoś. –

+0

Żaden php-genius właściwie tego nie odgadł? @Pietrosanti zrobiłeś jakieś testy? – garlix

Odpowiedz

0

Jestem przeciwko nagłówkowi -> rozwiązaniu lokalizacji, ponieważ dodasz dodatkowe żądanie do swojego serwera. Spróbuj tego rozwiązania Zamiast:

if (file_exists($file)) { 
     header('Content-Type: image/png'); 
     readfile($file); 
     exit; 
    } 

Roztwór ten powinien mieć minimalny narzut i pracy pamięci.