Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]problem z stringiem jako liczba
Forum PHP.pl > Forum > Przedszkole
xavierek
Witam mam stringa = "50/1" jak zrobić z tego zmienna jako cyfra ? czyli w tym wypadku wyjdzie 50
!*!
  1. $liczba = '50/1';
  2. echo (int)$liczba;
xavierek
wszystko ok ale jak damy 50/2 to dalej jest 50 tongue.gif
Dominator
  1. $liczba = 50;
  2. $liczbadwa = 2;
  3. $dzialanie = $liczba / $liczbadwa;
  4. echo $dzialanie;
xavierek
mam stringa który pochodzi z xml $dane = "50/2"
Dominator
  1. $dane = "50/2";
  2. $exp = explode("/", $dane);
  3. echo $exp[0] / $exp[1];
xavierek
problem rozwiazany lepiej wychodzi na

  1. $ciag = '50/2';
  2. eval('$ciag ='.$ciag.';');
  3. echo $ciag;
PanGuzol
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.
Tomplus
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.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.