Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Unikalne klucze w tablicy
kilas88
post
Post #1





Grupa: Zarejestrowani
Postów: 305
Pomógł: 25
Dołączył: 27.01.2007

Ostrzeżenie: (0%)
-----


Szukam funkcji lub sposobu na wyszczególnienie w tablicy tylko pozycji z unikalnymi kluczami liczbowymi, np.

  1. <?php
  2. $zmienna1 = array(
  3. 1 => 'a',
  4. 2 => 'b',
  5. 3 => 'c'
  6. );
  7.  
  8. $zmienna2 = array(
  9. 2 => 'b',
  10. 3 => 'c',
  11. 4 => 'd'
  12. );
  13.  
  14. $efekt = array_unique_keys($zmienna1, $zmienna2);
  15.  
  16. print_r ($efekt);
  17. ?>
  18.  
  19. Array (
  20.  [1] => a
  21.  [2] => b
  22.  [3] => c
  23.  [4] => d
  24. )


W jaki sposób osiągnąć powyższy efekt ?

Ten post edytował kilas88 27.01.2009, 18:16:01
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
kefirek
post
Post #2





Grupa: Zarejestrowani
Postów: 781
Pomógł: 256
Dołączył: 29.06.2008

Ostrzeżenie: (0%)
-----


Może tak zobacz
  1. <?php
  2. $zmienna1 = array(
  3. 1 => 'a',
  4. 2 => 'b',
  5. 3 => 'c'
  6. );
  7.  
  8. $zmienna2 = array(
  9. 2 => 'b',
  10. 3 => 'c',
  11. 4 => 'd'
  12. );
  13.  
  14.  
  15. $wynik = array_merge($zmienna1, $zmienna2);
  16. $new = array_unique ($wynik);
  17. print_r ($new);
  18. ?>
Go to the top of the page
+Quote Post
kilas88
post
Post #3





Grupa: Zarejestrowani
Postów: 305
Pomógł: 25
Dołączył: 27.01.2007

Ostrzeżenie: (0%)
-----


Nie mogę zastosować array_unique, gdyż wywala mi elementy ze zduplikowaną wartością.

Dodam, że operują na tablicach typu:

  1. <?php
  2. Array ( [0] => 3 [1] => 3 [2] => 3 [3] => 3 [4] => 3 [5] => 3 [6] => 3 [7] => 3 [8] => 3 [9] => 3 [10] => 4 [11] => 3 [12] => 5 [13] => 5 [14] => 1 )
  3. ?>


Ten post edytował kilas88 27.01.2009, 18:44:05
Go to the top of the page
+Quote Post
kacka
post
Post #4





Grupa: Zarejestrowani
Postów: 44
Pomógł: 5
Dołączył: 29.06.2005

Ostrzeżenie: (0%)
-----


  1. <?php
  2. $zmienna1 = array(
  3. 1 => 'a',
  4. 2 => 'b',
  5. 3 => 'c'
  6. );
  7.  
  8. $zmienna2 = array(
  9. 2 => 'b',
  10. 3 => 'c',
  11. 4 => 'd'
  12. );
  13.  
  14. foreach ($zmienna1 as $key => $val)
  15. {
  16.    if (!isset($zmienna2[$key]))
  17.    {
  18.        $unikalne[] = $zmienna1[$key];
  19.    }
  20. }
  21.  
  22. foreach ($zmienna2 as $key => $val)
  23. {
  24.    if (!isset($zmienna1[$key]))
  25.    {
  26.        $unikalne[] = $zmienna2[$key];
  27.    }
  28. }
  29.  
  30.  
  31. print_r($unikalne);
  32. ?>

Nie wiem czy o to chodzi?


--------------------
Kacper Szurek <--- http://www.kacka.pl
Go to the top of the page
+Quote Post
kilas88
post
Post #5





Grupa: Zarejestrowani
Postów: 305
Pomógł: 25
Dołączył: 27.01.2007

Ostrzeżenie: (0%)
-----


  1. <?php
  2. $zmienna1 = array(
  3. 1 => 'a',
  4. 2 => 'b',
  5. 3 => 'c'
  6. );
  7.  
  8. $zmienna2 = array(
  9. 2 => 'b',
  10. 3 => 'c',
  11. 4 => 'd'
  12. );
  13.  
  14. $efekt = $zmienna1 + $zmienna2;
  15.  
  16. print_r ($efekt);
  17. ?>


to rozwiązuje mój problem biggrin.gif

Ten post edytował kilas88 27.01.2009, 19:50:08
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 09:12