Se connecter avec
S'enregistrer | Connectez-vous

[RESOLU] [PHP] Extraction spéciale dans une chaine de caracteres

Dernière réponse : dans Programmation

Bonjour.

J'ai des chaine de caracteres genre :

"12:38:12"
"6:12:7"
"2:0:5"

enfin, en regle générale : "X:Y:Z" ou X, Y et Z peuvent representer des nombres à 1 ou 2 chiffres.

Ce que je voudrais faire :
extraire justement X, Y et Z séparément !
Et je trouve que c'est compliqué car substr($chaine, 0, 2) extraira tantot deux chiffre, tantot un seul chiffre avec deux points...

donc si vous avez une idée. merci
Lassé par la pub ? Créez un compte

Bonsoir,
je ne suis pas vraiment calé en php, mais je pense que ce que tu cherches, c'est la fonction explode.
Ca donnerai un truc du genre:

$resultat=explode(":",$chaine)
$resultat est un array.
Si par exemple, tu as $chaine="XX:Y:ZZ",
alors:
$resultat[0]="XX"
$resultat[1]="Y"
$resulta[2]="ZZ"

Pour plus d'infos, tu peux aller voir par la

Bonne soirée :) 

Merci de vos idées... Bon finalement, j'avais cherché tout seul, et j'ai trouvé ca... Je poste ma solution (qui toutefois me semble mal habile) mais qui MARCHE néanmoins. J'edite le post en RESOLU, si ca peut servir a quelqu'un plus tard.
Merci encore a+

AVOIR X
#####################
$x=$machaine{0};
if($machaine{1} != ':'){
$x=$x.$machaine{1};
}
#####################

AVOIR Y
#####################
$z=$machaine{strlen($machaine)-1};
if($machaine{strlen($machaine)-2} != ':'){
$z=$machaine{strlen($machaine)-2}.$z;
}
#####################

AVOIR Z
#####################
if(strlen($x)==2){
$y=$machaine{3};
if($machaine{4} != ':'){
$y=$y.$machaine{4};
}
}
if(strlen($x)==1){
$y=$machaine{2};
if($machaine{3} != ':'){
$y=$y.$machaine{3};
}
}
#####################
Lassé par la pub ? Créez un compte
Tom's guide dans le monde