Dzisiaj temat, o którym od dawna chciałem się zainteresować, ale jakoś ciężko było mi się za niego zabrać. Jak powszechnie wiadomo, język PHP do najszybszych nie należy. Wynika to po części z jego natury - bycia językiem skryptowym. Jednak "pod maską" PHP znajduje się kod napisany w języku C i w tym języku także można pisać rozszerzenia, które mogą być ładowane za pomocą konfiguracji php.ini.
W tym wpisie stworzymy proste rozszerzenie s...
Dzisiaj o ciekawym mechanizmie wbudowanym bezpośrednio w gita – git hooks. Jest to mechanizm pozwalający na wykonywanie określonych, oskryptowanych wcześniej zadań podczas wykonywania podstawowych operacji występujących w tym systemie kontroli wersji. Możemy wykonywać automatyczne akcje np. przed stworzeniem commita albo wypchnięciem zmian na serwer.
Jednym z moich ulubionych przykładów na użycie hooków po stronie klienta (są dozwolone także akcj...
Continuos Integration – temat znany i lubiany, chociaż w wielu firmach temat traktowany po macoszemu (zwłaszcza tych mniejszych). Jeżeli zapyta się ktoś o dostępne na rynku rozwiązania, to bez zastanowienia odpowiemy: Jenkins, GitLab CI, Travis CI. Ostatnio zainteresowało mnie bardziej rozwiązanie udostępniane przez GitLaba i chciałem przetestować jego działanie w praktyce. Odkąd znam trochę Dockera to nie potrafię tworzyć projektów deweloperskic...
W PHP nie ma tablic typowanych – powie każda osoba, która pracowała z tym językiem przez przynajmniej kilka miesięcy. Ale jest za to pewna ciekawostka, o której nie każdy wie, a może być w pewnych sytuacjach bardzo przydatna. W języku PHP – ale nie tylko w nim – mamy operator reszty (ang. spread operator). Używamy go w deklaracji metod lub funkcji aby powiedzieć, że metoda przyjmuje bliżej niezidentyfikowaną liczbę argumentów. W PHP możemy użyć t...
W dzisiejszym wpisie chciałbym przedstawić jeden z prostszych sposobów, w jaki można odseparować od siebie fragmenty kodu w projekcie. Sposób ten będzie opierał się na paczkach ładowanych popularnym (w środowisku programistów PHP) menedżerem zależności Composer. W rzeczywistych rozwiązaniach oprogramowanie jest tworzone z gotowych komponentów. Większość firm na rynku nie osiągnęłaby sukcesu, gdyby miała stworzyć wszystkie komponenty swojego oprog...
Proste problemy wymagają prostych rozwiązań - ta myśl przeszyła moje myśli dzisiejszego poranka, kiedy kolega z pracy pokazał mi proste, aczkolwiek genialne w swojej prostocie rozwiązanie problemu dynamicznych pól obiektów w PHP. Jak zapewne wiesz, język PHP pozwala na programiście na wiele sztuczek, czasami aż do przesady. Jedną z nich jest właśnie możliwość dynamicznego deklarowania pól obiektów. Spójrzmy na przykładowy kod aplikacji w język...