jer666 Posté(e) le 24 octobre 2007 Posté(e) le 24 octobre 2007 Bonjour, sur mon site de video je propose des videos dailymotion au format 520 * 410. Aprés un changement de design je desirerais que toutes les videos soient au format 410 * 360. De plus j'aimerais que toutes mes videos peu importe la taille d'origine et peu importe la taille des lecteurs dailymotion soit proposer dans ce format sans avoir a modifier quoi que ce soit Donc je cherche un moyen de remplacer dans mon source du lecteur les valeurs de width="XXX" et height="XXX" Je connaissais str_replace pour réaliser ce type d'opération, sauf que la mon soucis c'est queje ne connais pas par avance les valeur XXX de width et height. donc ca ne peux pas marcher. Je ne trouve pas de fonction dans le manuel php qui puisse m'aider. auriez vous ca dans votre poche svp merci par avance pour votre aide toujours aussi dynamique et experte
jer666 Posté(e) le 25 octobre 2007 Auteur Posté(e) le 25 octobre 2007 ya rien de plus simple? j'ai pas le temps d'apprendre les expression régulière pour un broutille comme ca :)
windu.2b Posté(e) le 26 octobre 2007 Posté(e) le 26 octobre 2007 Les Regexp sont là pour rechercher des chaines de caractères dont on ne connait pas le contenu exact, ce qui est ton cas. A la limite, tu peux te "contenter" de rechercher 'width' et height' et de bidouiller ensuite leurs valeurs
Mephisto Posté(e) le 8 mai 2008 Posté(e) le 8 mai 2008 $width = str_replace(" .*$", "", str_replace("^.width=", "", $str)); $height = str_replace(" .*$", "", str_replace("^.height=", "", $str)); et tu verifies que t'as pas recuperer des quotes/doubles-quotes/fermeture de balise
theocrite Posté(e) le 9 mai 2008 Posté(e) le 9 mai 2008 Quelque chose comme preg_replace ('/width\s*=\s*"\s*[0-9]+/', 'width="520', $string);
Bab00n Posté(e) le 9 mai 2008 Posté(e) le 9 mai 2008 str_replace ? "Si vous n'avez pas besoin de règles de remplacement compliquées, utilisez cette fonction de préférence à ereg_replace() et preg_replace()." Apres comme l'on dis les autre les regexp c'est bien !! c'est pas du temps de perdu de les apprendre.
theocrite Posté(e) le 9 mai 2008 Posté(e) le 9 mai 2008 Je connaissais str_replace pour réaliser ce type d'opération, sauf que la mon soucis c'est queje ne connais pas par avance les valeur XXX de width et height.
locutyx Posté(e) le 13 mai 2008 Posté(e) le 13 mai 2008 Je connaissais str_replace pour réaliser ce type d'opération, sauf que la mon soucis c'est queje ne connais pas par avance les valeur XXX de width et height. Si tu n'aime pas les expressions régulières, une solution un peu bourrin est de séparer ta chaine en morceaux, de remplacer les morceaux à remplacer et de tout recoller. "explode" va être ton ami pour commencer, on va remplacer width="xxx" par width="100" 1 remplace width=" par width="||| avec un bon vieux str replace 2 tu utilise un $tab = explode("|||", $tachaine) maintenant, tu as un tableau avec : [0]=> ttzeiuhsqhjjhjdsffr width=" [1]=> xxx" rqrreqiihklfdsffdshjhhhb à ce niveau, tu sais que ce qui est avant le premier " est ton nombre, on va donc l'isoler. Tu remplace donc " par |||" et tu recoupe avec un $tab2 = explode("|||", $tab[1], 2) On utilise deux car tu ne veux faire la cassure que sur le premier élément à ce niveau, tu as donc 3 chaines $tab[0]= ttzeiuhsqhjjhjdsffr width=" $tab2[0]= xxx $tab2[1]= " rqrreqiihklfdsffdshjhhhb la chaine que tu souhaite, c'est $tab[0]."520".$tab2[1] Bien sûr, tu vérifie d'abord que ta chaine ne contenait pas au départ un ||| quelque part auquel cas tu tente avec un autre truc bizarre. De la même manière, tu peux recommencer avec le height Là, tu te dis qu'une bonne expression régulière, ça a parfois du bon C'est ainsi que je te conseille de perdre un peu de temps sur ce site qui va te permettre en moins de 10 minutes de pouvoir te la péter grave devant tes collègues et tes potes: tutoriel très bien fait
qui.dominatur Posté(e) le 17 mai 2008 Posté(e) le 17 mai 2008 +1 pour le tuto du siteduzero.com J'ai appris grâce à ce site et il suffit de le compléter avec le manuel php. En étant un novice du php, je peux dire que cette fonction mérite vraiment qu'on s'y intéresse car avoir les résultats sous forme de tableau est vraiment TRES pratique. Et à mon avis c'est plus simple d'utiliser les regex plutôt que la fonction explode comme indiqué ci-dessus.
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.