Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Usuwanie pozycji z tablicy ... ?, tablice
Nosfi
post 25.03.2005, 16:05:17
Post #1





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 13.10.2004
Skąd: Świnoujście

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


Witam,
dane zapisane są w jednej zmiennej:

  1. <?php
  2.  
  3. $dane = &#092;"asia;kasia;ola;ola;kasia\";
  4.  
  5. //rozbijamy dane na elementy tablicy:
  6. $tablica = explode(&#092;";\",$dane);
  7.  
  8. ?>

do tej pory aby usunąć jakiś element tablicy korzystałem z FOREACH i UNSET podając wartość elementu do usunięcia ($dane_wartosc);

np. $dane_wartosc = 'ola';

  1. <?php
  2.  
  3. foreach( $tablica as $index => $value ){
  4.  if($value == $dane_wartosc){
  5. unset($tablica[ $index ]);
  6.  }
  7. }
  8.  
  9. //i następnie składamy to w całość:
  10.  
  11. $tablica_nowa = implode(&#092;";\",$tablica);
  12.  
  13. ?>

jednakże w tym przypadku usuwany jest każdy element dopasowany do wartości ...
wcześniej miałem pojedyńcze elementy i nie było problemu, a teraz doszły powtarzające się ...

Jak można rozbudować tą funkcję lub ewentulanie rozwiązać problem w inny sposób?

Dzięki za helpa


--------------------
<?php $Sign=Show->ToMe('Nie ma to jak zimny prysznic'); ?>
<span style="font-weight: bold;">Tools:</span> XAMPP | PHP 5 | MySQL 5 | Notepad++
Go to the top of the page
+Quote Post
hwao
post 25.03.2005, 16:21:40
Post #2


Developer


Grupa: Moderatorzy
Postów: 2 844
Pomógł: 20
Dołączył: 25.11.2003
Skąd: Olkusz




Nie rozumie pytania...
moze array_unique" title="Zobacz w manualu PHP" target="_manual() ?
Go to the top of the page
+Quote Post
legorek
post 25.03.2005, 16:47:24
Post #3





Grupa: Zarejestrowani
Postów: 411
Pomógł: 35
Dołączył: 27.06.2004
Skąd: Kraków

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


Tak na szybko, nie chce mi się sprawdzać, ale powinno działać.

  1. <?php
  2.  
  3. $dane = &#092;"asia;kasia;ola;ola;kasia\";
  4. $tablica = explode(&#092;";\",$dane);
  5. $dane_wartosc = 'ola';
  6. while (array_search($dane_wartosc, $tablica))
  7. {
  8. $index = array_search($dane_wartosc, $tablica);
  9. }
  10. unset($tablica[ $index ]);
  11.  
  12. ?>


Ten post edytował legorek 25.03.2005, 16:48:26


--------------------
Go to the top of the page
+Quote Post
Nosfi
post 25.03.2005, 16:53:08
Post #4





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 13.10.2004
Skąd: Świnoujście

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


Cytat(hwao @ 2005-03-25 16:21:40)

smile.gif
tu nie ma co rozumieć ... chcę usunąć jeden element typu np. "ola", a nie wszystkie.


Ale już załatwione ...

Dzięki legorek - działa tak jak chciałem TNX ...

  1. <?php
  2.  
  3. $dane = &#092;"asia;kasia;ola;ola;kasia\";
  4.  
  5. $tablica = explode(&#092;";\",$dane);
  6. $dane_wartosc = 'ola';
  7. $index = array_search($dane_wartosc, $tablica);
  8. unset($tablica[ $index ]);
  9.  
  10. $tablica_nowa = implode(&#092;";\",$tablica);
  11.  
  12. echo $tablica_nowa;
  13.  
  14. ?>


Ten post edytował Nosfi 25.03.2005, 16:54:00


--------------------
<?php $Sign=Show->ToMe('Nie ma to jak zimny prysznic'); ?>
<span style="font-weight: bold;">Tools:</span> XAMPP | PHP 5 | MySQL 5 | Notepad++
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 Wersja Lo-Fi Aktualny czas: 18.07.2025 - 06:56