![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 0 Dołączył: 3.01.2016 Ostrzeżenie: (0%) ![]() ![]() |
Hejka,
może ktoś wie, jak się wyciąga jeden index z tego cholerstwa, np. ten, gdzie dwie wartości równe są 1? Jest to wynik łączenia dwóch tablic rekurencyjnie za pomocą funkcji array_merge_recursive i teraz chciałbym się trochę pobawić kluczem [hobby], dlatego chciałbym go w pierwszej kolejności wyświetlić. No i próbuję, no ale, że jestem cienki, nicość
to już jest tablica wielowymiarowa i powinny odnosić się do niej zasady jak do tablic wielowymiarowych, ale nie mogę się w tym połapać. Ten post edytował szachmat 20.12.2017, 20:52:08 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 460 Pomógł: 49 Dołączył: 5.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
Co to znaczy "się wyciąga jeden index". Napisz co ma być zwrócone. Jedynka czy co...
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 0 Dołączył: 3.01.2016 Ostrzeżenie: (0%) ![]() ![]() |
to samo co wyciąga się
![]() |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 1 707 Pomógł: 266 Dołączył: 3.07.2012 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Co dokładnie chcesz tu zrobić? Domyślam się, że to jest jakiś skrypt do portalu randkowego i dopasowujesz pary kryteriami? Opisz co robisz, bo może array_merge_recursive wcale nie jest najlepszym rozwiązaniem?
No ale odpowiadając na Twoje pytanie małpio: |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 175 Pomógł: 26 Dołączył: 13.09.2007 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Zakładam, że chodzi o znalezienie trafień (matches) - czyli wyświetl te klucze, gdzie są same 1 z dwóch zmiennych. Moim zdaniem powineneś użyć: array_uintersect_assoc na zmiennych $cechy_profilu_on, $cechy_profilu_ona
Ten post edytował sabat24 21.12.2017, 12:50:00 |
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
@SmokAnalog przeciez on wpierw musi znalezc ze to hooby jest wspolne dla obu....
zwykle array_filter i po sprawie
To ci zwroci tylko te parametry, ktore sa w obu tablicach -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 1 707 Pomógł: 266 Dołączył: 3.07.2012 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
@nospor nie chciałem tak zgadywać co on chce. Pytał jak wyciągnąć indeks, więc jak mniemam nie za dobrze wie, co robi.
A co do wyciągania wspólnych cech, to bardziej elegancko będzie tak:
Jedno array_uintersect_assoc zamiast pary array_merge_recursive i array_filter. Po drugie, kończymy z jedną wartością w tablicy na każdą cechę, a nie dwiema. Po trzecie, w przypadku nieistniejących cech w którejś tablicy, nie mamy błędu. (chociaż kto wie, może błąd jest wskazany) Pytanie jest niedoprecyzowane i tak się możemy bawić w zgaduj-zgadulę. ![]() |
|
|
![]()
Post
#8
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Jak dla mnie pytanie jest calkiem jasne i wyraznie widac co autor chce.
![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 1 707 Pomógł: 266 Dołączył: 3.07.2012 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
W sumie chyba masz rację. Kiedy pierwszy raz czytałem to pytanie, to wydawało mi się, że indeks odnosi się do numerycznego klucza.
Jeśli chodzi o wyciąganie po prostu nazw wspólnych cech, to najprościej chyba tak jak mówiłem plus array_keys:
W ten sposób $wspolne_cechy będzie tablicą ze wszystkimi cechami, gdzie jest 1 i 1, czyli w Twoim przypadku to będzie jednoelementowa tablica ['hobby']. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 09:19 |