Séparer une chaîne de caractères

Sork

Nouveau membre
Bonjour à tous,


J'ai un petit problème :

Comment séparer une chaîne de caractères en chacuns de ses caractères ?
Je m'explique : quand je rentre par exemple la chaîne 'bonjour', je veux récuppérer 'b', 'o', 'n', 'j'.... etc...

Merci de m'aiguiller sur la voie à suivre !


Sork
 

DaV-X

Grand Maître
Tout dépend d'ou tu veux les mettre. [:spamafote]

Tu remarqueras bien, a question précise, réponse précise :merci:
 

Sork

Nouveau membre
Ben c'est bon, j'ai trouvé tout seul !

J'ai parcouru l'aide de long en large...


J'ai utilisé ceci : $string{$i} dans une boucle.


Maintenant j'ai une autre question : comment peut-on faire simplement pour éliminer tous les caractères spéciaux, les accents, les slashes...


PS: le langage, vous l'avez compris, est du PHP !
 

Sork

Nouveau membre
string_replace ...
Avec ceci, je suis obligé de définir moi-même tous les caractères que je veux remplacer...

C'est-à-dire pour enlever les voyelles il faut que je fasse comme celà :
[cpp]$voyelles = array("a", "e", "i", "o", "u", "y");
echo $consonnes = str_replace($voyelles, "", "Bonjour le monde");[/cpp]

Il n'y a pas un truc pour remplacer automatiquement tous les caractères spéciaux ? Parce que si je les définis par moi-même et que j'en oublie un, tout foire !
 

Sork

Nouveau membre
Ben trop tard, je l'ai fait à la barbare...

J'ai fait deux fonctions :

[cpp]function supp_accents($mot){
// Caractères avec accents remplacés par leur équivalent sans accents :
$accents = "ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿýÑñÝ";
$sans_accents = "AAAAAAaaaaaaOOOOOOooooooEEEEeeeeCcIIIIiiiiUUUUuuuuyyNnY";
return(strtr($mot,$accents,$sans_accents));
}

function supp_special($mot){
// Caractères spéciaux supprimés :
$special = array("`","~","^","\"","_","-","&","{",",","¤","§","!","€","(",")","@","°","=","[","]","{","}","'","#","™","¡","¢","§","¨","©","®","¯","°","£","Æ","¤","¥","¦","µ","ª","ß","“","”","Š","š","¬","þ","ƒ","†","‡","ø","Œ","‰","¼","±","¹","æ","²","³","Ð","÷","¶","Þ","·","¿","?",".",";",":","/","\\","%","*","-","+","<",">","½","¾","×"," ");
return(str_replace($special,"",$mot));
}[/cpp]

Voilà pourquoi je demandais "simplement"... Pour éviter ça... Ben tant pis ! :D
 

batchy

Grand Maître
t'aurai pu tester si leur code ASCII était dans la tranche que tu voulais ...

la on peut injecter des caractères non-affichables ...
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 098
Messages
6 717 056
Membres
1 586 283
Dernier membre
BouhLette_
Partager cette page
Haut