Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] przekształcanie zmiennej
lonek
post 18.05.2006, 18:47:57
Post #1





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 15.05.2006
Skąd: Szczecin

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


Witam,

Mam zmienną:
$zmienna = "1, 9, 14, 19";
w której liczby w szeregu zmieniają się od zera do kilkudziesięciu. Każda z liczb to jakaś kategoria, 1 - owoce, 2 - warzywa, ... , 50 - samochody.

Jak prosto i szybko przekształcić tak zapisaną zmienną na:
$zmienna_przetworzona = "Kwiatki, Owoce, Ptaszki, Fistaszki" ?

Dodatkowo, w momencie kiedy jedna lub kilka z liczb ma wartość zero, ciąg ma omijać tą wartość i wyświetlać np. (Kwiatki, Ptaszki).


Dzięki.
Go to the top of the page
+Quote Post
Foxx
post 18.05.2006, 19:00:20
Post #2





Grupa: Zarejestrowani
Postów: 896
Pomógł: 76
Dołączył: 15.11.2003
Skąd: Sosnowiec/Kraków

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


str_replace" title="Zobacz w manualu php" target="_manual
Jest tam przykład prawie identyczny z tym czego potrzebujesz.
Go to the top of the page
+Quote Post
siemakuba
post 18.05.2006, 19:03:01
Post #3





Grupa: Przyjaciele php.pl
Postów: 1 112
Pomógł: 20
Dołączył: 10.04.2005

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


eee, chyba powinineś jeszcze podać skąd wiadomo że np. kategorii Owoce odpowiada liczba 1? Trzymasz to w jakiejś bazie/tablicy/pliku? No i jeszcze, czy na początek dysponujesz danymi tylko tami jak podałeś w $zmienna? czy moze tez masz w innej postaci ale z jakichs powodow tworzysz wlasnie taki ciag?

pozdr.
Go to the top of the page
+Quote Post
lonek
post 18.05.2006, 19:33:37
Post #4





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 15.05.2006
Skąd: Szczecin

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


Hm, taki ciąg tworzy się w momencie kiedy pobieram dane z bazy MySQLowej. I właśnie nie mam nigdzie przechowywanych informacji o tym że 1 to Owoce.. muszę coś takiego stworzyć, tylko właśnie nie wiem jak.

Ogólnie jest tak: na początku dysponuję zmienną w postaci $zmienna = "1, 15, 19, 25". Teraz potrzebna mi jest tablica, żeby przypisać każdej liczbie kategorie, no a potem przetworzyć to tak, jak podałem w pierwszym poście.


P.S. Foxx, dziękuję smile.gif
Zrobiłem to co chciałem:

  1. <?php
  2.  
  3. $zmienna = "1, 2, 3";
  4. $zmienna_liczbowo = array ('1', '2', '3');
  5. $zmienna_slownie = array('Owoce', 'Warzywa', 'Kwiaty');
  6. $wynik = str_replace($zmienna_liczbowo, $zmienna_slownie, $zmienna);
  7.  
  8. ?>


Ten post edytował lonek 18.05.2006, 19:48:53
Go to the top of the page
+Quote Post
erix
post 18.05.2006, 21:48:55
Post #5





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




PS: Zaczynaj od str_replace dla wiekszych wartosc, np:

Najpierw daj replace dla 11, a potem dla 1, bo wyjdzie Ci zamiast 11 'OwoceOwoce'.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
lonek
post 19.05.2006, 00:33:35
Post #6





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 15.05.2006
Skąd: Szczecin

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


Cytat
PS: Zaczynaj od str_replace dla wiekszych wartosc, np:
Najpierw daj replace dla 11, a potem dla 1, bo wyjdzie Ci zamiast 11 'OwoceOwoce'.


No właśnie.. jak zamieniam:
$array1 = array ('1', '2', '3', '4', '5');
na
$array2 = array ('150', 200', '300', '400', '577');

to się zaczyna kaszanić... bo '1' zamienia mi na '15770' smile.gif
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: 13.06.2025 - 04:30