je veux changer le mot :)) à un smily img avant de l'afficher à partir de la base de données avec php comment puis-je faireremplacer certaines images avec certains mots
Répondre
Une solution serait d'utiliser la fonction str_replace
.
Par exemple (en utilisant « :-)
», que je l'aime plus que votre « :))
» - seulement une question de goût ^^ vous jusqu'à utiliser la « bonne »):
$str = "This is a sentence with a smiley :-)";
$new_str = str_replace(
array(
':-)',
),
array(
'<img src="smiley.png" alt=":-)" />'
),
$str
);
echo $new_str;
vous obtiendrez ainsi cette sortie:
This is a sentence with a smiley <img src="smiley.png" alt=":-)" />
-à-dire le smiley a été remplacé par une image.
Notez que j'ai utilisé un tableau pour le premier et le second paramètre, lorsque vous appelez str_replace
: si vous avez d'autres smileys, vous pouvez simplement les ajouter à ces deux tableaux (le premier réseau étant la chaîne « recherchée » , et le second pour le "remplacement").
(Ce que je veux dire est: pas besoin d'appeler str_replace
plusieurs fois: une fois, en utilisant des tableaux, devrait être suffisant pour plusieurs remplacements)
Et, comme sidenote: je l'original " texte "du smiley pour l'attribut alt
de l'étiquette img
: de cette façon, si l'image ne peut pas être affichée, le navigateur affichera la version textuelle du smiley - ce qui est mieux que rien.
@Pascal MARTIN: Battez-moi. – BenTheDesigner
merci beaucoup, je l'ai fait –
Vous êtes les bienvenus :-) Amusez-vous! –
Vous pouvez utiliser quelque chose comme:
str_replace(':))', '<img src="path to your image" title="image title" />', $string);
Si vous voulez remplacer plusieurs « » smileys, les tableaux d'utilisation:
$find = array(
':)',
':('
);
$replace = array(
'<img src="path to happy image" title="" />',
'<img src="path to sad image" title="" />');
);
str_replace($find, $replace, $string);
Vous pouvez utiliser quelque chose comme ce qui suit. Créez un nouveau remplacement pour chaque image que vous avez.
$message = str_replace(":)", "<img src='happy.png' alt=':)'/>", $message);
$message = str_replace(":(", "<img src='unhappy.png' alt=':('/>", $message);
Cela transforme $message
"I'm happy :)"
en "I'm happy <img src='happy.png' alt=':)'/>"
. La balise alt révèle le smiley original lorsque les utilisateurs ne voient pas les images.
- 1. comment remplacer certains mots quand j'ai ajouté après de
- 2. mots DataGridView Remplacement et numéros avec des images
- 3. Xpath contient certains mots
- 4. Besoin de Javascript Regex Remplacer pour envelopper certains mots avec <a...>
- 5. comment remplacer certains caractères dans une chaîne?
- 6. Remplacer les mots - Ignorer les mots entre parenthèses
- 7. Rechercher des mots, Remplacer Liens
- 8. comment résoudre le problème zend_translate avec certains mots-clés?
- 9. : Comment mettre certains mots en surbrillance avec jQuery
- 10. Remplacer certains mots par des liens vers des définitions en utilisant Javascript
- 11. Remplacer les mots d'un dictionnaire
- 12. PHP - obtenir certains mots de la chaîne
- 13. Regex PHP supprimer certains mots clés
- 14. GVIM. Comment changer certains mots qui correspondent au motif?
- 15. pourquoi Request.QueryString remplacer + avec char vide dans certains cas?
- 16. Comment remplacer certains octets au milieu d'un fichier avec Python?
- 17. .Net expression régulière remplacer - préfixer chaque mot avec certains caractères
- 18. Comment remplacer certaines ressources d'un PropertyResourceBundle
- 19. Comment remplacer certains octets dans un fichier?
- 20. getimagesize() renvoie false sur certaines images
- 21. Remplacer les mots de querystring avec des expressions régulières
- 22. problème simple regex: Remplacer les mots avec de
- 23. Comment remplacer les mots sur le thème blogger avec image?
- 24. Remplacer uniquement les mots complets dans une chaîne avec Regex
- 25. Remplacer la chaîne en excluant certaines chaînes en Java
- 26. XSL: Remplacer certains caractères par des balises xml
- 27. Restreindre certains comptes utilisateur à certaines adresses IP dans Django
- 28. Comment puis-je renie certains mots-clés sur l'entrée d'utilisateur
- 29. Configurer Doxygen pour masquer certains noms ou mots-clés
- 30. VS2008 C#: Expression régulière et identification de certains mots
http://www.hawkee.com/snippet/1834/ – miku
@MYYN, cet exemple utilise la 'ereg_' fonction. 1) Je ne vois pas le besoin de regex dans ce cas, et 2) lors de l'utilisation de regex, il est conseillé de choisir la famille 'preg_' sur le' ereg_' car ce dernier est déjà obsolète ou le sera bientôt. –