68 votes

Comment puis-je diviser une chaîne à la première occurrence de "-" (signe moins) en deux $ vars avec PHP?

Comment puis-je diviser une chaîne à la première occurrence de - (signe moins) en deux $ vars avec PHP?

J'ai trouvé comment diviser sur chaque "-" mais pas seulement sur la première occurrence.

Exemple:

 this - is - line - of whatever - is - relevant
$var1 = this
$var2 = is - line - of whatever - is - relevant

Remarque, également dépouillé le premier "-".

Merci d'avance pour l'aide!

152voto

staticsan Points 14435

C'est très simple, utiliser un paramètre supplémentaire pour explode dont beaucoup de gens ne se rendent pas compte:

list($before, $after) = explode('-', $source, 2);

52voto

Brad Points 61171
$array = explode('-', 'some-string', 2);

Ensuite, vous pouvez faire $var1=$array[0] et $var2=$array[1] .

2voto

Murat Tutumlu Points 559

Voici ce dont vous avez besoin: en utilisant list () avec explode ():

 list($var1, $var2) = explode(' - ', 'this - is - line - of whatever - is - relevant', 2);

Notez les espaces autour du "-" (signe moins)

2voto

Oleg Points 2995

Vous pouvez utiliser la fonction strtok:

 $first = strtok($string, '-');

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X