web-dev-qa-db-fra.com

Comment effacer tous les espaces d'une chaîne en PHP?

Duplicate possible:
Pour effacer les espaces dans une variable en PHP

Comment puis-je décaper / supprimer tout espaces d’une chaîne en PHP?

J'ai une chaîne comme $string = "this is my string";

Le résultat devrait être "thisismystring"

Comment puis je faire ça?

582
streetparade

Voulez-vous simplement dire des espaces ou tous les espaces?

Pour juste des espaces, utilisez str_replace :

$string = str_replace(' ', '', $string);

Pour tous les espaces (y compris les tabulations et les fins de ligne), utilisez preg_replace :

$string = preg_replace('/\s+/', '', $string);

(De ici ).

1286
Mark Byers

Si vous souhaitez supprimer tous les espaces:

$str = preg_replace('/\s+/', '', $str);

Voir le 5ème exemple sur la documentation de preg_replace . (Notez que je l'ai copié à l'origine ici.)

Edit: les commentateurs ont souligné, et ont raison, que str_replace est meilleur que preg_replace si vous voulez vraiment supprimer le caractère espace. La raison d'utiliser preg_replace serait de supprimer tous les espaces (y compris les tabulations, etc.).

53
Arkaaito

Si vous savez que l'espace blanc est uniquement dû à des espaces, vous pouvez utiliser:

$string = str_replace(' ','',$string); 

Mais si cela peut être dû à l'espace, onglet ... vous pouvez utiliser:

$string = preg_replace('/\s+/','',$string);
33
codaddict

str_replace fera ainsi l'affaire

$new_str = str_replace(' ', '', $old_str);
15
David Heggie