Archiwum kategorii ‘Ciekawostki’

StringBuilder w PHP

czwartek, 24 Marzec 2011

Jak dobrze wiadomo, PHP nie jest wyposażony w mechanizm typu StringBuilder znany z innych języków jak C# lub JAVA. W Internecie znaleźć można wiele dyskusji na to, czy taka funkcjonalność jest w ogóle do czegoś potrzebna, oraz gotowe implementacje jako dowody na to, że wydajność nie ulega zmianie.

Ja spróbuję przedstawić dowody odwrotne: mechanizm StringBuilder można w PHP zaimplementować, co korzystnie wpływa na wydajność skryptu. (więcej…)

Jak obejść limit przestrzeni dyskowej na koncie WWW

czwartek, 24 Marzec 2011

Przy wyborze serwera hostingowego pod nową stronę WWW jednym z głównych czynników decydujących „za” lub „przeciw” jest limit dostępnej przestrzeni dyskowej.

Chociaż w dzisiejszych czasach większość firm na rynku prześciga się między sobą w ilości oferowanych gigabajtów (tak dostępnego transferu, jak i powierzchni), zademonstruję, jak te limity obejść całkowicie (lecz krótkoterminowo). (więcej…)

Silne typowanie danych w PHP, część I

środa, 23 Marzec 2011

Logo PHPW wielu dyskusjach porównawczych pomiędzy programistami różnych języków programowania często pojawia się zarzut w stylu „a u was w PHP nie ma silnego typowania danych!”.

Czy aby na pewno?

Okazuje się jednak, że w PHP można zaimplementować mechanizm silnego typowania danych znany z takich języków jak C, C++, C#, Java… (więcej…)

Oszukać przeznaczenie, czyli łamanie SAFE_MODE oraz max_execution_time

środa, 23 Marzec 2011

Większość programistów PHP choć raz w swoim życiu spotkało się z takimi terminami jak SAFE_MODE oraz limitem czasowym wykonywania programu w PHP (domyślnie 30 sekund).

O ile obie te rzeczy można łatwo wyłączyć, gdy pracuje się na serwerze dedykowanym lub w środowisku wewnętrznym firmy, to na hostingach współdzielonych obie te rzeczy potrafią przyprawić o ból głowy, wyłączając skrypt (np. migrujący dużą ilość danych) w trakcie jego wykonywania.

W tym artykule przedstawię prostą metodę na obejście tego zabezpieczenia. (więcej…)