Today I decided to prepare new gallery for Behemoth`s Lair Heroes 3 service. The very first step I have to take was to thumbnail existing images that each will fit exactly 100 x 100 dimensions and keep it`s original ratio. With PHP I would use IMagick::cropThumbnail() which do exactly what I need. IMagick uses Image Magic and so do I :) Beneth you will find results of my research: this code will create thumbnails for all JPG images from current directory and save them into thumb subdirectory.
find . -maxdepth 1 -iname '*jpg' -exec convert {} -thumbnail 100x100^ -gravity Center -crop 100x100-0-0 thumb/{} \;
Dziś w DI pojawił się news, w którym autor informuje o potencjalnym zagrożeniu ze strony plików GIF. Tak się skład, że nie tylko pliki GIF mogą okazać się niebezpieczne, a stworzenie takiego niebezpiecznego pliku wcale nie jest trudne.
Okazuje się bowiem, że przy odrobinie nieuwagi webmastera (a wiadomym jest, że wśród wszelkiej maści programistów PHP wielu jest nieuważnych…) można niebezpiecznym uczynić tak pliki GIF jak JPG.
Read more…
Jakiś czas temu przyszło mi się zmierzyć z zagadnieniem prezentowania obiektów znajdujących się w pewnej odległości od zadanego punktu. Jako dane wejściowe miałem do dyspozycji współrzędne geograficzne, a moim zadaniem było oprogramowanie prostego interface`u opartego o mapę. Pogooglałem, poczytałem, popytałem i doszedłem do pewnego rozwiązania, którym dziś (zachęcony wpisem znalzionym na DZone) chcę się podzielić.
Read more…
Wczoraj na Planecie PHP znalazłem wpis Locale-Sensitive Dates in PHP. Autorka opisuje zagadnienie obsługi dat, w kontekście ich tłumaczenia na różne języki. Proponowanym rozwiązaniem jest skorzystanie z kombinacji funkcji setlocale oraz strftime. Nie jest to jednak rozwiązanie idealne, gdyż wymaga, aby środowisko, w którym działa aplikacja, obsługiwało wybrany zestaw znaków. W dyskusji zaproponowałem rozwiązanie oparte o Zend Framework, które chciałbym pokrótce przedstawić.
Read more…
Wczoraj na liście mailingowej PHP pojawiła się zapowiedź rozpoczęcia prac nad PDO v2. Wśród nowości ma się znaleźć pełne wsparcie dla Unikodu, kolumn XML, czy wbudowana obsługa metadanych opisu schematów tabel. To wszystko zamknięte w jednolitym, kompatybilnym wstecz(!), API pokrytym co najmniej w 80% testami jednostkowymi.
Zapowiada się ciekawie, ale póki co za oceanem mówi się głównie nie o nadchodzącym powiewie świeżości, ale o CLA [PDF]. Zainteresowanych zapraszam do zapoznania się z przygotowanym FAQ