Niezalogowany [ logowanie ]
Subskrybuj kanał ATOM Kanał ATOM

Autor wpisu: Athlan, dodany: 21.08.2007 13:01, tagi: php

Ostatnio napotkałem problem z tasowaniem tablic, który dość sprawnie rozwiązałem. Publikując notkę oraz sposób wybrnięcia z tego problemu zapewne komuś pomoże.

Tablicę możemy tasować, tzn losowo ustawić jej wartości. Do tej operacji potrzebujemy funkcji shuffle() o której mowa w manualu. Spójrzmy jednak na notatkę:

Notatka: Ta funkcja przypisuje nowe klucze dla elementów argumentu tablica. Wszystkie istniejące klucze zostaną usunięte.

Nieciekawie prawda? W moim przypadku klucze tablicy były bardzo potrzebne, bowiem zawierały istotne informacje potrzebne do działania aplikacji. Doszedłem do wniosku, że jest możliwe zachowanie kluczy, trzeba tylko rozpisać sobie nową funkcję, która ma za zadanie:

  • Stworzyć kopię tasowanej tablicy.
  • Operując na kopii przetworzyć ją tak, aby nowa tablica zawierała tylko klucze, naturalnie je przypisując operatorem []
  • Tasować nowopowstałą tablicę kluczy.
  • Do potasowanej tablicy kluczy przypisać wartości szukając po kluczach w oryginalnej tablicy.

Działania proste. Spróbujmy stworzyć z powyższych punktów zlepek kodu:

PLAIN TEXT PHP:
  1. function array_shuffle(array $aArray)
  2. {
  3. $aArrayShuffle = array();
  4.  
  5. foreach($aArray as $mKey => $mValue)
  6. $aArrayShuffle[] = $mKey;
  7.  
  8. shuffle($aArrayShuffle);
  9.  
  10. $aResult = array();
  11.  
  12. foreach($aArrayShuffle as $sKey)
  13. $aResult[$sKey] = $aArray[$sKey];
  14.  
  15. return $aResult;
  16. }

Małe testy: http://phpfi.com/257646

Autor wpisu: stormfly, dodany: 11.08.2007 12:35, tagi: php

Jak obiecywałem jakiś czas temu, wracam do tematu procedur składowanych. Wyzwalacze (ang. triggers), bo o nich będzie mowa, stanowią bardzo wygodny mechanizm, który odciąża naszą aplikację od dodatkowych implementacji. Przykład, który wybrałem, aby zobrazować działanie wyzwalacza to...

Autor wpisu: Zyx, dodany: 01.08.2007 21:15, tagi: php

Jest to koniec pewnej epoki dla mnie - odchodzę z redakcji WebCity.pl, a w zasadzie odszedłem już pod koniec maja, tyle że nie ogłaszałem tego oficjalnie. Wszystko skończyło się w przykrych okolicznościach, a mianowicie kłótni o kod źródłowy mojego autorstwa, który został bestialsko potraktowany "niby na lepsze", a w rzeczywistości na gorsze + z błędami, i to bez mojej wiedzy. Ten zespół redakcyjny po prostu nie miał już szans na dalsze istnienie.

Autor wpisu: Zyx, dodany: 30.07.2007 09:56, tagi: php

Na wielu blogach stale powracającym tematem są wady i niedoskonałości PHP wynikające z zaniedbań w początkowych latach istnienia projektu. Faktycznie, zestawienie PHP z takim Ruby może w wielu miejscach budzić zazdrość i frustrację. Ruby ma to, to, tamto i jeszcze to, ma RoR-a, a PHP ledwo co się Zend Frameworka dorobił, ponadto wiele rzeczy, które w innych językach są traktowane jak standard, tutaj jest jedynie opcjonalnymi rozszerzeniami lub wręcz dodatkami, za które trzeba płacić.

Autor wpisu: Łukasz Rodziewicz, dodany: 13.07.2007 11:05, tagi: php

“Nie będziesz mi instalował starych wersji na serwerze!”

Dziś oficjalnie ogłoszono koniec życia php z lini 4.x. Będzie on rozwijany do końca tego roku a do 8 sierpnia 2008 będą łatane krytyczne dziury bezpieczeństwa.Co oznacza to dla nas developerów? Pewnie nic bo tam gdzie było php4 tam będzie. Ja zleceniodawce na wstępie informuje, że pracuje tylko na php5. A Ty ?

Autor wpisu: stormfly, dodany: 01.07.2007 23:59, tagi: php

Przy galerii zdjęć bardzo często spotykamy się z wyświetlaniem poszczególnych zdjęć w tabeli. Automatyzacja tego zadania odbywa się poprzez wykorzystanie reszty z dzielenia, czyli mówiąc stricte informatycznie - operatora modulo, reprezentowanego w php poprzez znak %. Często zdarza...

Autor wpisu: WojciechNaruniec, dodany: 01.07.2007 22:42, tagi: php

Po ponad roku od rozpoczęcia prac pojawiła się w końcu pierwsza stabilna wersja Zend Framework. Główny cel został osiągnięty, API jest stabilne, większość błędów wyeliminowana, więc teraz będzie czas na wprowadzenie kolejnych funkcjonalności. Prawdopodobnie niedługo pojawi się obsługa layoutów, czyli czegoś w stylu Master Pages znanych z ASP.NET. Twórcy zapowiadali także komponent do obsługi formularzy, a [...]
Wszystkie wpisy należą do ich twórców. PHP.pl nie ponosi odpowiedzialności za treść wpisów.