Encore raccourcir une chaîne

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Encore raccourcir une chaîne

par pèere limpinpin » 05 févr. 2009, 19:30

Bonsoir,

Merci tardivement (pour cause de voyage) pour vos réponses !

En fait, ce forum est très utile : il oblige à réfléchir avant de poser la question (parfois, sa mise en forme intelligible permet de s'apercevoir des failles de son raisonnement) et la perplexité des intervenants permet de s'interroger.

Je mets "résolu" à la question, même si j'ai finalement enployé un très simple... str_replace !

Encore toute ma gratitude.

V.

par blof » 30 janv. 2009, 21:12

Bonsoir,
<?php

$url = 'http://www.viwiv.com/lp-content/uploads/2008/08/pict00302.jpg';

$size = GetImageSize($url);
$new_url = preg_replace('/(.+)\.([^.]+)$/', '$1-'.$size[0].'x'.$size[1].'.$2', $url);

echo $new_url;

?>
là on est dans le bizarre ...

par pèere limpinpin » 30 janv. 2009, 17:24

Bonjour Jojo,

Merci pour ta réponse :)

Pour répondre à ta question, le but est de récupérer le nom d'une image et de sa vignette.

En revanche, et sans l'avoir testé, le preg_replace que tu replaces équivant à un str_replace, où je ne pas compris la documentation ?

Je pensais qu'une expression régulière comme la première me permettrait de m'affranchir du problème de l'extension, qui peut-être .jpg, .jpeg, .gif ou .png, mais peut-être ai-je mal posé le problème.

Merci !

V.

par jojolapine » 30 janv. 2009, 14:50

Alors il sera possible d'insérer quelque chose entre le nom de l'image et son extension... mais ou comptes tu récupérer ces infos?
Sinon ben ç asera quelque chose comme ça:

Code : Tout sélectionner

#([a-zA-Z0-9]+)(\.jpg)#
pour l'expression et pour le replace:

Code : Tout sélectionner

$1-225x300$2

Encore raccourcir une chaîne

par pèere limpinpin » 30 janv. 2009, 13:09

Bonjour,

Le week-end dernier, j'avais posé une question pour savoir comment raccourcir une chaîne comme http://www.viwiv.com/lp-content/uploads ... 25x300.jpg en http://www.viwiv.com/lp-content/uploads ... t00302.jpg. Blorf m'avait conseillé l'emploi de l'expression régulière...
$url = 'http://www.viwiv.com/lp-content/uploads/2008/08/pict00302-225x300.jpg'; 
$new_url = preg_replace('/-\d+x\d+/', '', $url); 
echo $new_url;
... qui me donne entière satisfaction et m'a évité des heures de galère à plonger dans les arcanes du Web. J'ai essayé de me plonger dans le charme des expressions régulières, mais demeure perplexe.

Aujourd'hui, je souhaiterai utiliser une deuxième expreg pour arriver au résultat inverse, à savoir transformer la chaîne http://www.viwiv.com/lp-content/uploads ... t00302.jpg en http://www.viwiv.com/lp-content/uploads ... 25x300.jpg.

Je vous rassure, ma santé mentale est excellente (!), mais je veux ajouter une deuxième fonctionnalité à mon petit code.

Je vous remercie pour votre aide,

Cordialement,

V.