2016-11-24 2 views
-1

У меня проблема. Я пытаюсь написать строку с текстом ASCII следующим образом: '/ \'. Но всякий раз, когда я делаю это, обратная косая черта прикручивает код, отменяя цитату, определяющую ее строку, поэтому закручиваю ее. Есть ли способ аннулировать обратную косую черту, чтобы она не отменяет цитату? Спасибо, парни!Обратная косая черта в PHP

+0

Вы можете показать нам строку с цитированием, как у вас есть сейчас? – WEBjuju

+6

Когда обратная косая черта появляется сразу перед цитатой в строке в PHP, она ускользает от этого символа, поэтому она не будет закрывающей цитатой. Вам нужно избегать обратной косой черты с другой. '\\ '' – marekful

+0

@WEBjuju Мой вывод находится в комментарии в ответе ниже. – Njinx

ответ

2

\ - специальный символ, который гласит: «Следующий символ имеет особое значение».

Так что, если вы хотите Dispaly \ вы должны написать ... \\, чтобы получить один \ на выходе

+0

Я пробовал это. Исходная строка выглядит так: '' \/\/'', а измененная строка выглядит так: «\\/\\ /», но я получил этот вывод «//» – Njinx

+0

Пожалуйста, обновите свой вопрос с помощью некоторого примера кода – piotr

0

отличным решения при написании таких вещей, как это Heredoc. Внутри блока heredoc вам не нужно беспокоиться о том, чтобы избежать чего-либо, это будет просто текст.

Например:

echo <<<TEXT 

/|\/|\/|\/|\/|\/|\/|\/|\/|\/|\ 

TEXT; 

Существует один улов. PHP сломается, если вы не выровняете эхо в начале строки, или если ТЕКСТ; не выравнивается в начале строки.

Heredoc также могут быть отнесены к переменной, например, так:

$var = <<<SOME_MORE_TEXT 

/|\/|\/|\/|\/|\/|\/|\/|\/|\/|\ 

SOME_MORE_TEXT; 

Наконец, Heredoc сохраняет вкладки и пробелы. Что также может пригодиться при выполнении ASCII-арта.

Для получения дополнительной информации обратитесь к: http://php.net/manual/en/language.types.string.php.

+1

где это пример OP, который они указали в разделе ответа? я предполагаю, что я решил, что это решение - OP, вставляющий свой пример в ответ. пожимают плечами. мой новый гораздо менее запутанный. – WEBjuju

+0

Действительно! Принадлежал! – Digitalis

0

Было бы очень полезно, чтобы показать, что вы пробовали, но это произведет точный вывод, который вы запросили (как показано на SO)

echo '\'/\\' . "'\n" ; 

«/ \»

Он должен также дать вы понимаете, как работает обратная косая черта в разных типах строк.

0

Вам нужно только избежать окончательного при использовании одинарных кавычек.

$var = 'backslash\backslash\backslash\\'; 
// output is: 
// backslash\backslash\backslash\ 
+0

Я не понимаю, что если пример op равен $ var = '\/\ /'; Он просто выйдет ** \/\/**. Думаю, мы будем зацикливаться на тайне, так как мы больше заинтересованы в этом, чем OP. – WEBjuju

Смежные вопросы