Przeglądaj artykuły z tagami " php"
wrz
17
2015

Drzewo kategorii – budowa struktury od dołu do góry

php_logo

W trakcie prac nad wtyczką generującą ofertę produktów sklepu w formacie XML oraz JSON natrafiłem na problem budowy struktury drzewa kategorii. Struktura drzewa kategorii generowana jest rekurencyjnie. Najczęstszy przypadek to od góry (rodzica) w dół (do dziecka). Mając ID kategorii nadrzędnej jesteśmy w stanie znaleźć jej dzieci dzięki czemu schodzimy coraz niżej. Ciekawszy temat pojawia się w momencie budowy drzewa kategorii zaczynając od dołu (dziecka) idąc w górę. Poniżej przedstawiam kod, dzięki któremu to osiągniemy.

gru
26
2013

Szukasz programisty PHP dla e-commerce?

programista

Ostatnio skrobnąłem artykuł dla serwisu evigo.pl Trzy rzeczy, o których musisz pamiętać, szukając programisty systemów e-commerce. Opisałem w punktach istotne elementy związane z poszukiwaniem programisty. Myślę, że każdy kto choć raz szukał wsparcia przy obsłudze sklepu na poziomie kodu, może się zgodzić z tym co przeczyta w artykule. Podejście od strony praktycznej, zero teorii. Poniżej przedstawiam skróconą listę zagadnień: Gdzie szukać programisty. Ile kosztuje dobry programista i od czego zależy jego cena. Na co należy […]

lis
28
2013

Podział naturalny Jenks w PHP – Mapa Choropleth

algorytm

Podaję opis użycia algorytmu podziału naturalnego Jenks dla map Choropleth. Autorem adaptacji tego algorytmu w PHP jest David Drake. Szukałem długo rozwiązania swojego problemu z grupowaniem wyników na zakresy/klasy. Nie znalazłem nic co by omawiało od A do Z ten temat. Myślę, że także Tobie to się przyda :) Smacznego. Zastosowanie Algorytm podziału naturalnego pozwala na grupowanie wyników o zbliżonych do siebie wartościach. Następnie otrzymane zgrupowane wartości nanosimy na mapę. Jedna grupa, jeden kolor. Dzięki […]

sie
18
2013

PHPlot – Zmiana strony rysowania wykresu słupkowego (Bar Chart)

plot

W trakcie rysowania wykresów słupkowych (Bar Chart) z udziałem PHPlot, potrzebowałem odwrócenia wykresu w poziomie (horyzontalnie). Ze strony prawej na lewą. Domyślnie Bar Chart jest rysowany po prawej stronie osi Y.   Przykład Na przykładowym rysunku widać także wspólny opis osi Y, nie jest to opisane w tym artykule. Aby to osiągnąć należy łączyć dwa wykresy jako oddzielne zdjęcia w jedno, np. przy użyciu ImageMagick.     Rozwiązanie 1) Na początku ciała klasy phplot, deklarujemy […]

cze
28
2013

PHPlot – Zmiana grubości słupków horyzontalnych (Bar Chart)

plot

PHPlot nie udostępnia opcji zmiany grubości słupków przy wykresach typu Bar Chart. Przestawię poniżej modyfikację, która pozwoli ręcznie ustawiać szerokość/grubość linii wykresu słupkowego.     Przykład     Rozwiązanie 1) Na początku ciała klasy phplot, deklarujemy zmienną $SetBarWidth odpowiedzialną za zmianę wyliczeń szerokości słupka.   2) Dodajemy funkcję, dzięki której będziemy ustawiać wartość zmiennej $SetBarWidth.   3) Modyfikujemy jedną linię funkcji CalcBarWidths.   4) Poniżej ustawianie szerokości w skrypcie generującym wykres. Wartość może przyjmować ujemne […]

cze
24
2013

PHPlot – Wyrównanie odległości pomiędzy słupkami (Bar Chart)

plot

Używając klasy PHPlot Przy rysowaniu horyzontalnych wykresów typu Bar Chart (słupki), można zauważyć, że nie są one rysowane w równych odstępach pomiędzy sobą. Różnica jest jednego piksela. Niby nic, ale jest to problemem w przypadku łączenia dwóch rysunków ze sobą, np. oznaczenia słupków spoza phplot, sklejenie dwóch wykresów. Wówczas wysokości się desynchronizują, wykresy rozjeżdżają się góra/dół.   Przykład Wykres przed wyrównaniem odległości. Tutaj specjalnie powiększyłem grubość słupków, aby uwidocznić efekt   Wykres po wyrównaniu odległości […]

cze
20
2013

PHP – Zaokrąglanie liczb (podzielne przez pięć)

php_logo

Krótki skrypt, który “zaokrągla” liczby w górę do ich połowy lub całości. Liczba wynikowa jest podzielna przez 5.       Przykład Liczba wejściowa -> Liczba wyjściowa 0 -> 0 1 -> 5 3 -> 5 5 -> 5 6 -> 10 9 -> 10 10 -> 10 12 -> 15 15 -> 15 17 -> 20 20 -> 20 22 -> 25 26 -> 30 100 -> 100 200 -> 200 205 -> 250 […]

cze
18
2013

PHP – Zamiana kolejności elementów tablicy wg. kluczy

php_logo

Z cyklu “małe, a cieszy”, opiszę prostą funkcję, która jest przydatna przy sortowaniu elementów tablicy asocjacyjnej według kluczy. Przydatne, gdy iterujemy po tablicy z użyciem pętli foreach.   Przykład tablicy Jako klucze są w tym przykładzie użyte przedziały liczb (string). Przed wykonaniem sortowania, elementy 10-14, 5-9 oraz 25-29, 20-24 są w odwrotnej kolejności. Array ( [0-4] => 1 [10-14] => 1 [5-9] => 0 [15-19] => 1 [25-29] => 4 [20-24] => 0 [30-34] => […]

cze
14
2013

MySQL – Zmiana wielkości polskich liter. Funkcja UPPER() + LOWER()

mysql polskie znaki

Przy braku dostępu do funkcji mb_convert_case oraz przy samym użyciu strtolower, która nie zmienia ogonków, zmiana wielkości polskich liter w PHP jest problematyczna. Można ratować się użyciem str_replace i działaniem na tablicy z polskimi ogonkami, ale…   Jest jeszcze jeden bardzo wygodny sposób przez funkcje wbudowane w MYSQL. W przypadku, gdy używamy wyciągania stringów z bazy danych można wspomóc się użyciem funkcji UPPER() oraz LOWER().   Poniższy select formatuje słowa: Pierwsza litera duża, reszta liter […]

cze
6
2013

Łączenie obrazów PNG + kanał przezroczystości = PHP + ImageMagick

png_imagemagick

Każdy kto bawił się do tej pory obrazami zapisanymi w formacie PNG 24bit z kanałem przezroczystości zrozumiał, że nie jest to takie łatwe jakby się mogło wydawać :) Przyczyną tego jest kanał alpha. Sama bibliotek GD wspomaga obróbkę PNG z przezroczystością, lecz niestety nie działa tak jak powinna przy ich łączeniu (spłaszczaniu) pomiędzy sobą. Rozwiązaniem jest użycie biblioteki ImageMagick dla PHP przez API imagick.   Opis Łączenie dwóch plików PNG z kanałem przezroczystości. Ustawienie tła […]

Strony:12»

O mnie

Arkadiusz Krakiewicz
Programista aplikacji webowych dla branży eCommerce. Jednocześnie jako właściciel sklepu zna od "podszewki" potrzeby osób prowadzących sprzedaż w internecie.
W swoich rozwiązaniach stawia na funkcjonalność i wydajność aplikacji pod kątem obsługi klienta.
[X]
Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików cookies.
Możesz określić warunki przechowywania lub dostępu do plików cookies w Twojej przeglądarce.