Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Problem z konwersją string -> int
Forum PHP.pl > Forum > Przedszkole
raiden
Jestem początkujący w PHP, więc może mój problem jest prosty do rozwiązania, ale nigdzie nie mogę znaleźć jego rozwiązania.
Mam taki kod:
  1.  
  2. echo $ilosc;
  3. echo (int)$ilosc;

Do zmiennej $ilosc jest wcześniej zapisywana liczba pobrana ze strony za pomocą curl'a. Pierwsza instrukcja wypisuje poprawnie liczbę, ale druga zawsze wypisuje 0. Próbowałem też:
  1. $ilosc += 0;
  2. echo $ilosc;

ale to też zawsze daje 0.
To samo jest przy konwersji string -> double;

Czy potrzebna jest jakaś zmiana w php.ini żeby poprawnie działały konwersje czy po prostu coś źle robię?
nospor
to moze podaj co dokladnie zawiera zmienna $ilosc przed konwersją.
raiden
To jest cały kod:
  1. $curl = curl_init();
  2. curl_setopt($curl, CURLOPT_URL, "http://www.....");
  3. curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
  4. $strona = curl_exec($curl);
  5. curl_close($curl);
  6.  
  7. preg_match_all('[<span class="flip">(.+?)<\/span>]', $strona, $wynik);
  8.  
  9. $ilosc = "";
  10. foreach($wynik[0] as $klucz => $wartosc)
  11. {
  12. $ilosc .= $wartosc;
  13. }
  14.  
  15. echo $ilosc;
  16. echo "<br>";
  17. echo (int)$ilosc;

A wynik działania skryptu to:
  1. 11836
  2. 0
mkdes
użyj var_dump() żeby sprawdzić typ zmiennej
potem możesz zamienić to na liczby całkowite-> użyj intval();
http://www.php.net/manual/en/function.intval.php
nospor
Podejrzyj źródło strony i wklej dokladnie to co tam znajdziesz. Pewnie są jakieś smieci, których normalnie nie widzisz
raiden
Rzeczywiście było trochę śmieci, var_dump() zwracał string(135).

Już wszystko działa, dzięki za pomoc.
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.