Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] auto zmiana linku
bastek8989
post
Post #1





Grupa: Zarejestrowani
Postów: 205
Pomógł: 1
Dołączył: 11.09.2006

Ostrzeżenie: (0%)
-----


Witam

no tu mam nielada problem

chcialbym zeby adres http://www.youtube.com/watch?v=ogIqayRDr4w by automatycznie zamieniany na http://www.youtube.com/v/ogIqayRDr4w

czyli skrypt musi wstawiac adres http://www.youtube.com/v/ i dokleic do niego litery pobrane z pierwszego od 24 do 36 wlacznie ignorujac dalszy ciag adresu 36<

ma ktos jakis pomysl? :|

Ten post edytował bastek8989 13.10.2006, 11:59:44
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Athlan
post
Post #2





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

Ostrzeżenie: (0%)
-----


Cytat(siemakuba @ 13.10.2006, 11:06:47 ) *
BTW - @Athlan: jeżeli URL u ciebie będzie miał dodatkowe parametry to zostaną one również dodane po zamianie, czego bastek8989 zdaje się nie życzy sobie.

pozdr.


  1. <?php
  2.  
  3. $sString = "http://www.youtube.com/watch?v=ogIqayRDr4w&duperele";
  4. $sString2 = "http://video.google.com/googleplayer.swf?docId=-1591729516923874694&duperele";
  5. $sString3 = "http://www.youtube.com/watch?v=_b2uFsVllpw";
  6. $sString4 = "http://video.google.pl/videoplay?docid=8114931701782010192";
  7.  
  8. echo Replacing::youtube($sString);
  9. echo'<hr>';
  10. echo Replacing::google($sString2);
  11. echo'<hr>';
  12. echo Replacing::youtube($sString3);
  13. echo'<hr>';
  14. echo Replacing::google($sString4);
  15.  
  16. class Replacing
  17. {
  18. function google($sString)
  19. {
  20. $aArrayPatterns = array
  21. (
  22. "#http://video.google.com/googleplayer.swf?docId=(.*?)#si",
  23. );
  24.  
  25. $aArrayReplaces = array
  26. (
  27. "1",
  28. );
  29.  
  30. $sReplaced = preg_replace($aArrayPatterns, $aArrayReplaces, $sString);
  31.  
  32. if(strpos($sReplaced, "&"))
  33. return (int)substr($sReplaced, 0, strpos($sReplaced, "&"));
  34. else
  35. return $sReplaced;
  36. }
  37.  
  38. function youtube($sString)
  39. {
  40. $aArrayPatterns = array
  41. (
  42. "#http://(.*?).youtube.com/watch?v=(.*?)#si",
  43. );
  44.  
  45. $aArrayReplaces = array
  46. (
  47. "http://1.youtube.com/v/2",
  48. );
  49.  
  50. $sReplaced = preg_replace($aArrayPatterns, $aArrayReplaces, $sString);
  51.  
  52. if(strpos($sReplaced, "&"))
  53. return substr($sReplaced, 0, strpos($sReplaced, "&"));
  54. else
  55. return $sReplaced;
  56. }
  57. }
  58.  
  59. ?>


sory za chaotyczność kodu (brakuje static i public'a), ale Bastek nie ma php5 na servie i nie poszło... jak coś to powinniście sobie dodać (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

pozdrawiam (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

edit:

co za głupi bbcode na tym forum :/ ciągle dodaje mi slashe w kodzie przez co jest źle pokolorowany... shit, daje na phpfi:
http://phpfi.com/163180

Ten post edytował Athlan 13.10.2006, 12:48:27
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 21:00