![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 160 Pomógł: 0 Dołączył: 27.03.2006 Ostrzeżenie: (0%) ![]() ![]() |
Jak zwykle moje pytanie związane z prędkością
![]() Co szybsze: 1.
2.
Dotychczas używałem pętli. Chodzi mi głównie o takie rozwiązanie na dużych tablicach. Wydaje mi się, że array_map będzie szybsze (bo to funkcja php), ale trzeba tworzyć dodatkową funkcję add i na dodatek obawiam się, że array_map też będzie używać takiej pętli. Jak sprawdzić co jest szybsze? A może odpowiedź jest oczywista? Drugie pytanie. Mam tablicę:
i mogę używać $array['lol'] i $array['lul']. Ale co będzie, jeśli chciałbym użyć $array[0] i wyświetlić "bol"? Nic, bo nie ma takiej pozycji w tablicy. Jest jakaś funkcja, która mi doda do tablicy jeszcze raz te dane, żeby było po kolei: 0 => 'bol', 1 => 'srul', a efekt był taki:
niezależnie od długości tablicy? |
|
|
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 698 Pomógł: 3 Dołączył: 28.03.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Ad 1. Przetestuj to sam, masz microtime w php... 5 minut pisania i rozwiążesz swój problem.
Ad 2. A da się to zrobić prosto:
Mam nadzieję, że kolejności nie pozmienia. -------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 160 Pomógł: 0 Dołączył: 27.03.2006 Ostrzeżenie: (0%) ![]() ![]() |
array_values - to jest to!
Wielkie dzięki. Co do przykładu 1 - ok, zmierzę sobie, ale chodzi mi o to po prostu czy nie widać przypadkiem gołym okiem co szybsze ![]() Zmierzyłem sobie. Okazuje się, że array_map z funkcjami jest szybsze od pętli. Na tablicy:
Prędkość wykonania 2 razy array_map (dwie funkcje, które dodawały co innego do wszystkich elementów): 0.0013279914856 Prędkość wykonania 2 razy tej pętli (każda pętla dodawała do wszystkich elementów co innego): 0.00270891189575 Jak widać funkcje php są szybsze niż rozwiązania zastępcze ![]() |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 10:24 |