PHP rychlá práce s obrázky

http://mozektevidi.net/up/php-logo.jpg

Dnes jsem objevil obrovskou výkonovou ztrátu v souboru 404.php. Jak rychle přečíst a poslat na výstup soubor obrázku? Srovnání metod ImageCreateFromPNG, header a file_get_contents. Poslání obrázku na výstup přes PHP.
Celý článek je zveřejněn na mozektevidi.net/clanek/php-rychla-prace-s-obrazky

#1 lo3k webpisem.cz

hmm... zajmavý, skusím si s tím doma pohrát :)

date 31.5.2008 So 21:55
#2 TondaD webblog.antonindanek.cz/

No co si budeme povídat. Načítat GD knihovnu (ImageCreateFromPNG), když si s tím obrázkem už stejně nic nedělal, jen ho odeslal tak jak jsi ho přijmul ... no zkrátka to bylo malinko zbytečný. :)

P.S.: Právě jsem zjistil, že sem píšeme dva Tondové, tak jsem upravil nick.

date 1.6.2008 Ne 13:58
#3 MzK webmozektevidi.net

reakce na »TondaD 2«: Chybama se člověk učí. Já jsem na ten první (neefektivní) způsob přišel asi googlením výrazu „poslání obrázku na výstup php“ a nepřemýšlel nad výkonem.
Tonda jako Tonda :) nazory.5w.cz/autor/Tonda.html nazory.5w.cz/autor/TondaD.html Mohl bych rozlišovat podle IP (nejde, jedna IP má víc uživatelů a jeden uživatel má víc IP) nebo podle cookies (nespolehlivé, funguje jen na jeden počítač do reinstalace) nebo podle zadaného inputu WWW (taky nejde, dost lidí zadává víc webovek, snad kvůli PR… nebo registrace
Ale registrace jen kvůli přidání příspěvku je zbytečná a málokdo by to udělal.

BTW, ten kdo si změní nick mi připomíná „moudřejší ustoupí“ :D

date 1.6.2008 Ne 15:01
#4 Bagy webbagy.ic.cz

Co zkusit poslat header a pak precist obrazek readfile() ?

Sry jestli je to blbost nebo pomaly

date 1.6.2008 Ne 20:33
#5 Tonda webnetzona.cz emailcapousek©netzona.cz

No super :) Vkon neni zadarmo a patrikvogl jede na mem serveru :D

date 1.6.2008 Ne 23:25
#6 TondaD webblog.antonindanek.cz/

reakce na »MzK 3«: To je pravda. Jak se říká: Z úspěchu se nic nenaučíš. :)

Taky u sebe na blogu používám identifikaci lidí podle jména (i když navenek žádný personalizovaný funkce nanabízim). Jedinej dobrej způsob je podle e-mailu. To pak ale člověk musí nastavit e-mail jako povinnou položku a nabídnout možnost skrytí, protože né každej chce svůj e-mail vystavovat na webu.

date 1.6.2008 Ne 23:31
#7 setka

Možná ještě o něco rychlejší by to mohlo být s funkcí readfile, která obsah souboru rovnou vysype na výstup, takže se nemusí ukládat do proměnné a pak vypisovat přes echo.
Minimálně spotřeba paměti bude menší, u malého souboru s obrázkem se to ale asi tolik neprojeví.

date 7.6.2008 So 22:28
#8 Tonda webnetzona.cz emailcapousek©netzona.cz

reakce na »setka 7«:
Tak ono je jedno jestli pouzijes
readfile();
nebo
echo file_get_contents();

Stejne ta funkce ude jen symlink na file_get_contents, nebo v horsim pripade na fopen, s echem.

date 10.6.2008 Út 08:01

© 2008 Oldřich Šálek Zásady ochrany osobních údajů