Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Zamiana linkow
Forum PHP.pl > Forum > Przedszkole
kwiaciarnia
Witam

Chciałbym zamienić link np:

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

na link

http://forum.php.pl

Wiem ze to tego typu operacji stosuje się funkcje eregi_replace. Niestety nie umiem sobie poradzić z tym problemem. Prosiłbym o pomoc. Za odsyłanie do Googli dziękuję tongue.gif
zegarek84
Kod
$string='http://forum.php.pl/index.php?showtopic=111773';
$string=preg_replace('/http\:\/\/([^\/]+).*/', 'http://\1', $string);
echo $string;
kwiaciarnia
bardzo dziękuję winksmiley.jpg działa tak jak chciałem

Przyszedł mi jeszcze jeden pomysł. Robię statystyki dla strony. Chciałbym zrobić coś takiego ze jak użytkownik znajdzie moją stronę w np googlach to zapisać informacje jak mnie znalazł. Tzn chodzi mi konkretnie o to co wpisał do wyszukiwarki. Czyli jak użytkownik przyjdzie do mnie ze strony:

http://www.google.pl/search?hl=pl&clie...=Szukaj&lr=

Jak wyciągnąć z linku PHP+wyrazenia+regularne

Druga sprawa to np link:
http://www.google.pl/search?hl=pl&lr=&...art=10&sa=N

i Tutaj chciałbym wyciągnąć 10 ze "start" tak aby wiedzieć na której stronie znaleziono moją witrynę.
zegarek84
Kod
//zapytanie
$text='http://www.google.pl/search?hl=pl&client=firefox-a&rls=org.mozilla%3Apl%3Aofficial&q=PHP+wyrazenia+regularne&btnG=Szukaj&lr=';
$preg = preg_match('/&q\=([^&]+)/', $text, $matches);
echo $matches[1].'<br>';

//strona
$text='http://www.google.pl/search?hl=pl&lr=&client=firefox-a&rls=org.mozilla:pl:official&q=PHP+wyrazenia+regularne&start=10&sa=N"';
$preg = preg_match('/&start\=([0-9]+)/', $text, $matches);
echo $matches[1];
publius
Cytat(zegarek84 @ 20.01.2009, 18:54:00 ) *
Kod
$string='http://forum.php.pl/index.php?showtopic=111773';
$string=preg_replace('/http\:\/\/([^\/]+).*/', 'http://\1', $string);
echo $string;


Od razu sam zapytam: gdzie można poczytać o tym, jak skonstruować taki ciąg: ('/http\:\/\/([^\/]+).*/', 'http://\1', $string), chodzi mi konkretnie o to, jakie zastosowanie ma /, *, (), etc. Nie ma wyjaśnienia do tego przy funkcji preg_replace ani przy pokrewnych...
kwiaciarnia
jeszcze raz dziękuję winksmiley.jpg
zegarek84
Cytat(publius @ 20.01.2009, 19:21:34 ) *
Od razu sam zapytam: gdzie można poczytać o tym, jak skonstruować taki ciąg: ('/http\:\/\/([^\/]+).*/', 'http://\1', $string), chodzi mi konkretnie o to, jakie zastosowanie ma /, *, (), etc. Nie ma wyjaśnienia do tego przy funkcji preg_replace ani przy pokrewnych...

szukaj kursów w google na temat: wyrażenia regularne
ale jeśli dobrze pamiętam bardziej wartościowe kursy znajdziesz dopisując jeszcze jakiś konkretny język programowania

...tak na szybko znalazłem kurs w miarę (pisze w miarę gdyż dawniej w linkach miałem jeden dużo bardziej wartościowy ale nie pamiętam adresu gdyż już ich nie przeglądam a jak system przeinstalowywałem to zapomniałem zrobić bakup zakłądek):
http://www.doman.art.pl/kursjs/kurs/regular.html - są tam też przykłady i popatrz trochu przez pryzmat gdyż to kurs do javascript - jednak konstrukcja i same wyrażenia regularne są takie same....

w tym kursie którego niestety linku nie mogę przytoczyć było tez dokładniej opisane o samych modyfikatorach których tutaj co prawda nie urzywałem ale czesto się przydają - ale o nich można na stronie manuala przeczytać tyle, że niestety nie ma tam aż tak dokładnie omówienia:http://php.net.pl/manual/pl/reference.pcre...n.modifiers.php - niestety po angielsku

poszukaj sobie w google więcej kursów - są lepsze od tego co wyżej podałem - szukaj mniej więcej tak jak Cię nakierowywałem - możesz poszukać też o moderwrite i htaccess (pewnie źle napisałęm ale google poprawi winksmiley.jpg gdyż tam też się urzywa wyrażeń regularnych....
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.