Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] przeliczanie zł na $
Lejto
post
Post #1





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 48
Dołączył: 23.05.2007

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


Napisałem skrypt który pobiera kurs dolara
  1. $url = file_get_contents('http://nbp.pl/kursy/xml/c248z051223.xml');
  2. preg_match( '#<kurs_kupna>(.*?)</kurs_kupna>#', $url,$opis );
  3.  
  4. define('KURS', $opis[0]);
  5. [php]
  6. zamieniam tak aby było z . a nie z ,
  7. [php]
  8. $j = explode(',',KURS);
  9.  
  10. $kw = $j[0].'.'.$j[1];

teraz jak zamienić PLN na $? robię tak
  1. echo $kw * $kwota;

gdzie kwota to 3zł
ale nie działa
dostaje 0
dlaczego?


--------------------
Go to the top of the page
+Quote Post
tehaha
post
Post #2





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

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


sprawdź co zwraca preg_match bo wydaje mi się, że masz złe wyrażenie powinno być raczej:
  1. preg_match( '#<kurs_kupna>([^<>]*)</kurs_kupna>#', $url,$opis );
bo inaczej takie coś:
<kurs_kupna>3,2083</kurs_kupna>
<kurs_sprzedazy>3,2731</kurs_sprzedazy>
</pozycja>

<pozycja>
<nazwa_waluty>dolar australijski</nazwa_waluty>
<przelicznik>1</przelicznik>
<kod_waluty>AUD</kod_waluty>
<kurs_kupna>2,3429</kurs_kupna> może zostać dopasowane

Ten post edytował tehaha 6.11.2010, 15:01:34
Go to the top of the page
+Quote Post
Crozin
post
Post #3





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


1. Od tego masz wersję w XMLu byś mógł to normalnie obsłużyć: SimpleXML
2. Zamiana przecinka na kropkę: str_replace

EDIT:
@tehaha: Przeczytaj o zachłanności selektorów w PCRE - dobrze ma.

Ten post edytował Crozin 6.11.2010, 15:02:43
Go to the top of the page
+Quote Post
Wicepsik
post
Post #4





Grupa: Zarejestrowani
Postów: 1 575
Pomógł: 299
Dołączył: 26.03.2009

Ostrzeżenie: (20%)
X----


  1. $kw = 5;
  2. $xml = simplexml_load_file('http://nbp.pl/kursy/xml/c248z051223.xml');
  3. echo str_replace( ',', '.', $xml->pozycja[0]->kurs_kupna ) * 5;


--------------------
Go to the top of the page
+Quote Post
outsider
post
Post #5





Grupa: Zarejestrowani
Postów: 267
Pomógł: 36
Dołączył: 8.08.2008

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


  1. echo (float)$kw * (float)$kwota;


Ten post edytował *OuTSideR* 6.11.2010, 19:41:14
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: 21.08.2025 - 12:36