trouver le champ img d'une chaine

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 : trouver le champ img d'une chaine

Re: trouver le champ img d'une chaine

par niou142 » 10 janv. 2014, 12:37

Ok merci je vais voir avec ça si tout fonctionne correctement :)

Re: trouver le champ img d'une chaine

par Mazarini » 10 janv. 2014, 12:30

pour trouver monimage.jpg dans <img src"monimage.jpg" title="mon image"/>
$pos1 = strpos($mystring, '<img src"');
$pos2 = strpos($mystring, '" title="',$pos1); // pour chercher après $pos1
$chaine = substr($mystring,$pos1+10,$pos2-$pos1-10)
Il faut encore adapter 10 pour prendre vraiment la bonne chaine et vérifier les valeurs de $pos1 et $pos2 (==! false)

Une solution plus élégante est d'utiliser des regex, mais c'est trop compliqué pour moi, surtout sans pouvoir tester. cf http://fr2.php.net/manual/fr/function.preg-match.php

Re: trouver le champ img d'une chaine

par niou142 » 10 janv. 2014, 11:57

Merci pour ta réponse, du coup je suis obligé de faire un :
$pos1 = strpos($mystring, '<img');
et une nouvelle fois de :
$pos2 = strpos($mystring, '/>');

Puis je dois ensuite faire une recherche de la chaine entre $pos1 et $pos2 ?

Ou il y a plus simple pour récupérer par exemple ? : <img src"monimage.jpg title="mon image"/>

Re: trouver le champ img d'une chaine

par Mazarini » 10 janv. 2014, 11:39

voir fonction strpos() : http://fr2.php.net/function.strpos
Ca te permettra de trouver <img ou tout autre chaine.

trouver le champ img d'une chaine

par niou142 » 10 janv. 2014, 10:13

Bonjour,

J'ai un blog qui tourne sous Wordpress mais comme personne ne peut m'aider sur leur forum je viens ici :).

J'ai ceci
$item->get_description()
qui me permet de récupérer le texte + image d'un article.

Au tout début de la chaine que je récupérer j'ai une image, je voudrais simplement récupérer le code <img src="ererer"/> et pas le reste.

Forcément comme vous vous en doutez je ne peux récupérer les x premiers caractères car ça varie tout le temps.

Savez-vous comment je peux faire pour récupérer seulement cette partie svp ?