Подтвердить что ты не робот

Несколько взрывоопасных символов с запятой и - (дефис)

Я хочу explode строку для всех:

  • пробелы (\n\t и т.д.)
  • запятой
  • дефис (маленькая тире). Как это → -

Но это не работает:

$keywords = explode("\n\t\r\a,-", "my string");

Как это сделать?

4b9b3361

Ответ 1

Explode не может этого сделать. Для этого есть хорошая функция, называемая preg_split. Сделайте это так:

$keywords = preg_split("/[\s,-]+/", "This-sign, is why we can't have nice things");
var_dump($keywords);

Выводится:

  array
  0 => string 'This' (length=4)
  1 => string 'sign' (length=4)
  2 => string 'is' (length=2)
  3 => string 'why' (length=3)
  4 => string 'we' (length=2)
  5 => string 'can't' (length=5)
  6 => string 'have' (length=4)
  7 => string 'nice' (length=4)
  8 => string 'things' (length=6)

Кстати, не используйте split, он устарел.