Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Wyciągnięcie portu z adresu
Forum PHP.pl > Forum > Przedszkole
-Grzegorz-
Witam, posiadam zmienną $adres zawierającą adres ip, lub domenę wraz z portem,np:

przykład 1 (z domeną):
$adres = mojadomena.pl:22222

przykład 2 (z ip):
$adres = 80.43.54.43:54543


Jak odfiltrować port i domenę/ip ze zmiennej $adres i wstawić je do osobnych zmiennych?


Pozdrawiam
krzywy36
http://php.net/explode
b4rt3kk
Zastosuj preg_match.

  1. preg_match('/^[0-9]{3}\.[0-9]{3}\.[0-9]{3}\.[0-9]{3}$/', $adres, $match);
  2.  
  3. //w match[0] bedziesz mial adres IP, postepuj analogicznie w stosunku do domeny i portu
-Grzegorz-
ok a więc są 2 sposoby smile.gif drugi znalazłem tu:

http://forum.php.pl/index.php?showtopic=195422

Dzięki za czas i pomoc, pozdro!
krzywy36
zauważ, że adres może mieć postać http://adres.pl:port, wtedy list z explode już się nie sprawdzi, lepiej wyrażenia regularne
thek
Ależ sprawdzi się explode... Wystarczy sprawdzić ostatni element tablicy. Nikt nie mówił, że to zawsze ma być drugi wink.gif Dla pewności jedynie warto sprawdzić ile elementów ma tablica. Musi mieć minimum dwa. Poza tym trzeba zwrócić uwagę, że za portem może być query string to raz, a dwa, że trzeba uważać jeśli adres jest choćby w formie połączenia ftp, bo nawet wyrażenie regularne musi wtedy uwzględnić potencjalny login i hasło, a tam też jest ":".

Najlepiej użyj parse_url ( string $url , PHP_URL_PORT ) i miej to z głowy smile.gif Po co pisać coś, co już w PHP zrobiono za Ciebie.
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.