Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Obcinanie wartości ze znaków innych niż cyfry
Forum PHP.pl > Forum > Przedszkole
spit
Cześć,
Ostatnio mam dość ciekawy problem. Otóż, pobieram z ciastka SMF id usera, ale wokół jest masa niepotrzebnych "śmieci" w postaci liter i znaków. Przykładkowo mam ciacho "a:4:{i:0;s:1:\"2\";i:1;s:40:\blablabla" i tak dalej. Interesuje mnie liczba "2" na początku, więc użyłem substr, by obciąć resztę. Zostawiłem sobie liczbę 2 i trzy znaki za nią, gdyż to ID userów, i liczba może sięgnąć tysięcy (teoretycznie). I teraz, jeżeli user ma id 1234 to jest sama liczba, ale jak 123 to zostaje liczba i znak \. Użycie str_replace, właśnie przez znak '\' jest niemożliwe (albo o czymś nie wiem), ale i tak nie byłoby to wygodne i idealne rozwiązanie. Więc zwracam sie z pytaniem, czy jest jakaś funkcja usuwająca z danego stringa wszystko poza cyframi? Będzię wdzięczny za pomoc.
gutek84
Poszukaj w manualu moze o eregi, preg.
spit
Użyłem funkcji ereg_replace. Gdyby kogoś to interesowało (choć to chyba rzadki przypadek), rzucam kod:
  1. <?php
  2. $uid = ereg_replace( '[^0-9]+', '', $uid );
  3. ?>
nowotny
Takie coś: "a:4:{i:0;s:1:\"2\";i:1;s:40:\blablabla" rozbija się funkcją unserialize" title="Zobacz w manualu PHP" target="_manual i nie trzeba kombinować...
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.