Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak otrzymać id filmu z youtube?
Forum PHP.pl > Forum > PHP
klusekman
Chce napisać skrypt który otrzyma np. taki link:
Kod
http://www.youtube.com/watch?v=ZDXDw8y1lDU&feature=topvideos
,
albo taki:
Kod
www.youtube.com/watch?v=ZDXDw8y1lDU

i zwróci mi to co jest przekazywane jako get zmienną v, czyli:
Kod
ZDXDw8y1lDU


Coś mi się wydaję że trzeba użyć funkcji preg match, ale nie bardzo rozumiem tego manuala po angielsku.
Wicepsik
wyrażenia regularne
klusekman
Nie ogarniam tych wyrażeń. Może jakiś link konkretniej, albo coś bo różnie pisze, raz jest eregi raz preg match to juz inaczej, zrobiłem tak:
  1. <?php
  2. $url='http://www.youtube.com/watch?v=ZDXDw8y1lDU&feature=topvideos';
  3. $wzor="v={11}&";
  4. preg_match_all($wzor, $url, $wyniki);
  5. echo $wyniki[0];
  6. ?>


i mam błąd
Kod
Warning: preg_match_all() [function.preg-match-all]: Delimiter must not be alphanumeric or backslash in C:\yt.php on line 4

erix
parse_url + parse_str
klusekman
Użyłem tych funkcji tak:
  1. <?php
  2. $url='http://www.youtube.com/watch?v=ZDXDw8y1lDU&feature=topvideos';
  3. $parsurl=parse_url($url, PHP_URL_PATH);
  4. parse_str($parsurl['query'],$ytvar);
  5. echo $ytvar['v'];
  6. ?>


ale skrypt nic nie wyświetla, pusta strona
_olo_1984
  1. $url = 'http://www.youtube.com/watch?v=ZDXDw8y1lDU&feature=topvideos';
  2. $parsurl = parse_url($url);
  3. parse_str($parsurl['query'], $ytvar );
  4. echo $ytvar['v'];


daje ZDXDw8y1lDU
klusekman
Cytat(_olo_1984 @ 17.06.2010, 19:11:33 ) *
  1. $url = 'http://www.youtube.com/watch?v=ZDXDw8y1lDU&feature=topvideos';
  2. $parsurl = parse_url($url);
  3. parse_str($parsurl['query'], $ytvar );
  4. echo $ytvar['v'];


daje ZDXDw8y1lDU


dzięki
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.