Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak wyciągnąć ID filmu z YouTube i zamienić na inny link?
Forum PHP.pl > Forum > PHP
Saki
Witam,
chce wyciągnąć z adresu URL ID filmu i zamienić na link: http://domena.tld/youtube.php?id=ID_FILMU

Już próbowałem coś takiego ale mi nie wychodzi:



  1. $wzorzec_youtube = array( '#http://www.youtube.com/watch?v=(.*)&#',
  2. '/#http://www.youtube.com/watch?v=(.*)&#');
  3. $zamiana_youtube = array( '<a href="http://domena.tld/youtube.php?id=\0">[\0]</a>',
  4. '\1<a href="http://domena.tld/youtube.php?id=\2">[\2]</a>');
  5.  
  6. $Body = 'Hej widzieliscie już to: h t t p://www.youtube.com/watch?v=Yu_j9oINnBg&feature=topvideos_comedy';
  7.  
  8. $Body = preg_replace($wzorzec_youtube, $zamiana_youtube, $Body);
  9.  
  10. echo $Body;
  11. // Oczekiwany Output: Hej widzieliscie już to: h t t p://domena.tld/youtube.php?id=Yu_j9oINnBg


Bardzo proszę o pomoc smile.gif

WTF: Czemu Forum zamienia Link w Kodzie na klikalne?! Nigdy tego nie było, naprawcie to smile.gif
GameMaker
  1. <?php
  2.  
  3. $link1 = "http://www.youtube.com/watch?v=tGi4Xm_mZao";
  4.  
  5. ///////wydobywamy id z linku1
  6. $yt_id = explode('?v=',$link1);
  7.  
  8. //////tworzymy nowy link
  9.  
  10. $nowy_link = "http://domena.tld/youtube.php?id=".$yt_id[1];
  11.  
  12. /// Output
  13.  
  14. echo "Hej widzieliscie już to : ".$nowy_link;
  15.  
  16. ?>
Saki
Cytat(GameMaker @ 16.08.2011, 20:19:23 ) *
  1. <?php
  2.  
  3. $link1 = "http://www.youtube.com/watch?v=tGi4Xm_mZao";
  4.  
  5. ///////wydobywamy id z linku1
  6. $yt_id = explode('?v=',$link1);
  7.  
  8. //////tworzymy nowy link
  9.  
  10. $nowy_link = "http://domena.tld/youtube.php?id=".$yt_id[1];
  11.  
  12. /// Output
  13.  
  14. echo "Hej widzieliscie już to : ".$nowy_link;
  15.  
  16. ?>


Niestety nie mogę tak zrobić, muszę tak zrobić:

  1. $link1 = "Hej widzieliscie już to: ht tp://www.youtube.com/watch?v=tGi4Xm_mZao";
  2.  
  3. ///////wydobywamy id z linku1
  4. $yt_id = explode('?v=',$link1);
  5.  
  6. //////tworzymy nowy link
  7.  
  8. $nowy_link = "ht tp://domena.tld/youtube.php?id=".$yt_id[1];
  9.  
  10. echo $nowy_link;
  11. // Oczekiwany Output: Hej widzieliscie już to: ht tp://domena.tld/youtube.php?id=tGi4Xm_mZao
  12. // A jest: ht tp://domena.tld/youtube.php?id=tGi4Xm_mZao
  13. // W jednej zmiennej muszę mieć już zmieniony link i tekst osoby :)


Jak ktoś napisze:

"Hej widzieliście już ten film: http://www.youtube.com/watch?v=tGi4Xm_mZao"

To ma zamienić na:
"Hej widzieliście już ten film: http://domena.tld/youtube.php?id=tGi4Xm_mZao"

I w tym jest problem żeby tekst napisany przez osobę też się wyświetlał smile.gif
lukaskolista
Pod indexem $yt_id[0] masz przeciez "Hej widzieliscie już to: ht tp://www.youtube.com/watch", poczytaj o tym jak dziala explode
cycofiasz
  1. preg_replace('#http://www\.youtube\.com/watch\?v=([a-zA-Z0-9_-]+)#','http://domena.tld/youtube.php?id=\\1',$str)
Saki
Dzięki wam wszystkim za pomoc smile.gif
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.