Découper une chaine de caractère mais avec plusieurs séparateur en PHP

Découper une chaine de caractère mais avec plusieurs séparateur en PHP

La fonction explode est très connu en PHP. Elle permet de découper une chaine de caractère en fonction d'un séparateur.

explode('-', 'foo-bar-foobar'); // ['foo', 'bar', 'foobar']

La fonction preg_split est moins connu, elle permet de découper une chaine de caractère non plus en fonction d'un séparateur mais en fonction d'une regex. Il est possible de cibler plusieurs séparateurs avec cette regex.

preg_split permet donc l'équivalent d'un explode mais avec plusieurs séparateur.

// Explode but with severals delemiters
$array = preg_split('/[YOUR_DELEMITERS_HERE]/', $string);

// Example with ".", "-" and "@"
$array = preg_split('/[.\[email protected]]/', '[email protected]');

// Result
['foo', 'bar', 'example', 'domain', 'com']

Les commentaires