Разделить текст на обратную косую черту \?

Я искал часы. Как я могу отделить строку с помощью "\"

Мне нужно отделить HORSE\COW на два слова и потерять обратную косую черту.

Ответ 1

$array = explode("\\",$string);

Это даст вам массив, для "HORSE\COW" он даст $array[0] = "HORSE" и $array[1] = "COW". С "HORSE\COW\CHICKEN", $array[2] будет "CHICKEN"

Так как обратные косые черты являются символом escape, они должны быть экранированы другой обратной косой чертой.

Ответ 2

Вы использовали explode() и избегаете escape-символа (\).

$str = 'HORSE\COW';

$parts = explode('\\', $str);

var_dump($parts);

CodePad.

Выход

array(2) {
  [0]=>
  string(5) "HORSE"
  [1]=>
  string(3) "COW"
}

Ответ 3

Просто explode() it:

$text = 'foo\bar';

print_r(explode('\\', $text)); // You have to backslash your
                               // backslash. It used for
                               // escaping things, so you
                               // have to be careful when
                               // using it in strings.

Обратная косая черта используется для экранирования кавычек и обозначения специальных символов:

  • \n - это новая строка.
  • \t - символ табуляции.
  • \" - это кавычка. Вы должны избегать этого, или PHP прочитает его как конец строки.
  • \' то же самое для одной кавычки.
  • \\ - обратная косая черта. Поскольку он используется для того, чтобы избежать других вещей, вам нужно избежать этого. Непонятно.