PHP: Odczytywanie wartości bajtów liczby całkowitej.

Dzisiejszy wpis po raz kolejny [poprzednio pisałem o flagach bitowych] zabiera nas w świat manipulacji niskopoziomowymi danymi, odzierając nieco PHP z jego wygodnej, wysokopoziomowej abstrakcji. Skupimy się w nim na wewnętrznym sposobie reprezentacji liczb i odczytywaniu informacji o wartościach ich kolejnych bajtów.

symfony: sfValidatorAnd i problem z ignorowaniem właściwości "required" komponentów wewnętrznych.

Realizuję w tym momencie bardzo przyjemny projekt - przyjemny dlatego, że powstaje “od zera” i mam możliwość wyboru narzędzi, w jakich będę go tworzył. Chciałem spróbować wykorzystać do tego testowany od pewnego czasu framework Symfony2, jednak idąc za radą udzieloną mi przez batmana podczas konferencji 4Developers wracam na “stare śmieci”, czyli stabilną wersję symfony. Jak to bywa przy powrotach - zazwyczaj pojawiają się problemy z ponownym “zgraniem się” programisty z kodem. Tym razem padło na mechanizm walidacji formularzy, który nie do końca chciał współpracować.

PHP: Flagi bitowe.

Programiści, którzy “zasmakowali” pracy w językach wysokiego poziomu, takich jak m. in. PHP, bardzo często zapominają o możliwości wykorzystania bardzo niskich mechanizmów do osiągnięcia większej elastyczności kodu. Z reguły wykorzystujemy w kodzie różne wzorce projektowe i inne ułatwienia wprowadzone wraz z paradygmatem obiektowym programowania i myślimy za pomocą dużych komponentów, zamiast skorzystać z tego, co istnieje i ma się dobrze od co najmniej kilkunastu lat. Niniejszy wpis będzie poświęcony jednej z takich właśnie możliwości - wykorzystaniu flag bitowych. Zapraszam do lektury.

PHP: Konstrukcja "or die()".

PHP jest językiem programowania, w którym znajduje się wciąż sporo magii, niezależnie od tego, jak czysty kod chcielibyśmy pisać. Czasem jest to magia wprowadzona przez samych twórców interpretera, czasem jednak jej źródło wypływa z innego niż zwykle wykorzystania prostych mechanizmów języka. W dzisiejszym wpisie chciałbym wyjaśnić działanie jednego z przypadków, z jakim styka się praktycznie każdy początkujący programista PHP, a każdy zaawansowany na pewno kilka razy widział jego wykorzystanie w “profesjonalnie” napisanej aplikacji internetowej.