Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> str_replace() - problem, Problem z str_replace
Ardo
post
Post #1





Grupa: Zarejestrowani
Postów: 88
Pomógł: 0
Dołączył: 16.03.2008

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


Mam problem z str_replace()
niżej podsyłam kod, niestety wynik z tego mam jakiś dziwny Mozę mi ktoś podpowie dlaczego.



  1. //$domy['typ_zabudowy'] --> ma wrtość 1
  2.  
  3. $tabT = array('7', '8', '9','10', '19', '1', '7');
  4. $tabY = array('1', '2', '3', '4', '5' , '7', '8');
  5. $auto_typ = str_replace($tabY, $tabT, $domy['typ_zabudowy']);
  6.  



chodzi oto ze wartość 1 chce zastąpić na 7
niestety wynik jaki dostaje to 1 a nie 7 dla czego?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
absflg
post
Post #2





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 14.11.2011

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


Skoro to dopasowanie, to nie możesz użyć zwykłego hasha?

  1. $tab = array(1=>7, 2=>8, 3=>9, 4=>10, 5=>19, 7=>1, 8=>7);
  2. $auto_typ = $tab [ $domy['typ_zabudowy'] ];


Edit:
A co do problemu: na początku zamienia 1 na 7, a następnie (przedostatnie przeszukanie) 7 na 1. I dlatego wracasz do punktu wyjścia. Jeżeli chcesz uniknąć takiej sytuacji użyj strtr().

Ten post edytował absflg 16.02.2012, 17:25:20
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 24.08.2025 - 07:50