Besoin d'enlever des éléments d'une variable

Résolu
besric123 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
besric123 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Si une âme charitable aurait la gentillesse de m'aider, ce serait très sympathique.

N'étant pas un spécialiste, je suis désolé des terme que j'utilise qui ne sont pas forcemment justes.

J'ai une variable sous la forme par exemple $url_image qui est sélectionnée à travers une requête sql dans mon fichier php.

Puis $template->set_var("urlimage", $url_image); pour la récupérer dans mon fichier.tpl, c'est le fonctionnement actuel.

Par contre, la variable se présente sous la forme par exemple "une-belle-image.jpg" et je souhaiterait enlever les tirets, le .jpg pour que cela devienne uniquement "une belle image" dans mon fichier tpl.

Est-ce que quelqu'un sait comment je pourrais faire ?

Avec un grand merci

Eric
A voir également:

2 réponses

[Dal] Messages postés 6205 Date d'inscription   Statut Contributeur Dernière intervention   1 105
 
Salut besric123,

Tu peux essayer comme ceci :

<?php 

$url_image = "une-belle-image.jpg"; 

echo "<p>valeur de départ de url_image = $url_image</p>"; 
# subtitution des tirets par des espaces 
$url_image = preg_replace("/-/", " ", $url_image); 
# retrait de l'extension .jpg 
$url_image= preg_replace("/\.jpg$/i", "", $url_image); 

echo "<p>valeur après traitement de url_image = $url_image</p>"; 

?>

donne :

valeur de départ de url_image = une-belle-image.jpg 

valeur après traitement de url_image = une belle image

l'extension .jpg est retirée, même si elle est en majuscules (.JPG).

Si tu veux remplacer par des espaces d'autres caractères que le tiret (par exemple l'underscore), ajoute les entre crochets, comme cela :

$url_image = preg_replace("/[-_]/", " ", $url_image);

Dal
0
besric123 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour Dal,

Un grand merci pour ta gentillesse et le service que tu me rends.

Je vais tester cela ce soir dès mon retour à la maison

Bonne journée
0