Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]problem z stringiem jako liczba, string = 50/1
xavierek
post
Post #1





Grupa: Zarejestrowani
Postów: 92
Pomógł: 2
Dołączył: 22.03.2009

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


Witam mam stringa = "50/1" jak zrobić z tego zmienna jako cyfra ? czyli w tym wypadku wyjdzie 50
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
!*!
post
Post #2





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

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


  1. $liczba = '50/1';
  2. echo (int)$liczba;


--------------------
Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta).
Go to the top of the page
+Quote Post
xavierek
post
Post #3





Grupa: Zarejestrowani
Postów: 92
Pomógł: 2
Dołączył: 22.03.2009

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


wszystko ok ale jak damy 50/2 to dalej jest 50 tongue.gif
Go to the top of the page
+Quote Post
Dominator
post
Post #4





Grupa: Zarejestrowani
Postów: 565
Pomógł: 15
Dołączył: 11.10.2010

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


  1. $liczba = 50;
  2. $liczbadwa = 2;
  3. $dzialanie = $liczba / $liczbadwa;
  4. echo $dzialanie;
Go to the top of the page
+Quote Post
xavierek
post
Post #5





Grupa: Zarejestrowani
Postów: 92
Pomógł: 2
Dołączył: 22.03.2009

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


mam stringa który pochodzi z xml $dane = "50/2"
Go to the top of the page
+Quote Post
Dominator
post
Post #6





Grupa: Zarejestrowani
Postów: 565
Pomógł: 15
Dołączył: 11.10.2010

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


  1. $dane = "50/2";
  2. $exp = explode("/", $dane);
  3. echo $exp[0] / $exp[1];
Go to the top of the page
+Quote Post
xavierek
post
Post #7





Grupa: Zarejestrowani
Postów: 92
Pomógł: 2
Dołączył: 22.03.2009

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


problem rozwiazany lepiej wychodzi na

  1. $ciag = '50/2';
  2. eval('$ciag ='.$ciag.';');
  3. echo $ciag;
Go to the top of the page
+Quote Post
PanGuzol
post
Post #8





Grupa: Zarejestrowani
Postów: 353
Pomógł: 50
Dołączył: 28.07.2005
Skąd: Łaziska Górne

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


Możesz skorzystać z eval ale z tą funkcją trzeba być ostrożnym, mieć 100% pewności ,że kod który do niej przekazujesz jest tym co oczekujesz.
Jeśli twoje stringi to zawszy tylko jakieś proste działania arytmetyczne to może lepiej będzie napisać funkcję która będzie wyciągać z nich liczby i znak oraz wykonywać obliczenia.

Ten post edytował PanGuzol 19.08.2012, 18:12:28


--------------------
Sposób na życie? Uśmiech na twarzy :D
"Widzę więcej, wiem więcej, tak to jest mniej więcej"
"NIE kradnij, rząd nielubi konkurencji"
Go to the top of the page
+Quote Post
Tomplus
post
Post #9





Grupa: Zarejestrowani
Postów: 1 879
Pomógł: 230
Dołączył: 20.03.2005
Skąd: Będzin

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


Po pierwsze w PHP nie ma liczb ułamkowych więc 50/2 nie jest liczbą a przetworzenie string na integer pobiera pierwszą liczbę z brzegu.

Więc musisz skorzystać z oferty Dominatora, ew. zmienić wartości jakie są wysyłane do pliku XML jako ułamek dziesiętny.
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: 19.08.2025 - 13:38