je fais un bbcode pour les vidéos youtube.User peut poster une vidéo comme bbcode par exemple comme [youtube] http://www.youtube.com/watch?v=ihK2pPcDSHM [/ Youtube]. Ensuite, il va le convertir en code html. Mais au lieu de la vidéo, je veux montrer aussi l'image de la vidéo. Donc, je le fais comme ceci:Comment utiliser substr à regexp de preg remplacer
$string = preg_replace("~\[yt]http://www.youtube.com/watch\?v=(.*)\[/yt]~Uis","<img src=\"http://img.youtube.com/vi/\\1/0.jpg\" />", $string);
Il montre l'image, mais quand quelqu'un met une URL comme:
http://www.youtube.com/watch?v=ihK2pPcDSHM&feature=channel
l'URL de l'image devient http://img.youtube.com/vi/ihK2pPcDSHM&feature=channel1/0.jpg
qui ne conduit pas à une image valide. J'essaye de changer le \\1
en ".substr('\\1', 0,11)."
mais il n'a aucun résultat.
Une suggestion pour résoudre ce problème? Merci!
grâce, mais cela a donné lieu à retourner une seule lettre. l'URL de l'image est donc devenue http://img.youtube.com/vi/l/0.jpg –
@ user539649: Êtes-vous sûr de faire une correspondance insensible à la casse? – Gumbo
hm ... qu'est-ce que vous voulez dire? : S je veux juste montrer l'image. Ai-je fait quelque chose de mal au code? –