Альтернативный способ записи строковых литералов в PHP? (без «или»)

Что я мог использовать в php вместо обычных символов «и» вокруг чего-то?

Пример:

echo("Hello World!") 

Благодаря!

Существует 4 способа инкапсуляции строк, одинарных кавычек, двойных кавычек, heredoc и nowdoc .

Читайте полную статью php.net здесь .

Heredoc

Третий способ разграничения строк – синтаксис heredoc: <<<. После этого оператора предоставляется идентификатор, а затем строка новой строки. Далее следует строка, а затем тот же идентификатор, чтобы закрыть цитату.

http://www.php.net/manual/en/language.types.string.php#language.types.string.syntax.heredoc

 $str = <<<EOD Example of string spanning multiple lines using heredoc syntax. EOD; 

Nowdoc

Nowdocs – это строки с одним кавычком, что heredocs – это строки с двойными кавычками. A nowdoc задается аналогично heredoc, но синтаксический анализ не выполняется внутри nowdoc. Конструкция идеально подходит для встраивания PHP-кода или других больших блоков текста без необходимости экранирования. Он имеет некоторые общие черты с конструкцией SGML, поскольку он объявляет блок текста, который не предназначен для синтаксического анализа.

A nowdoc идентифицируется с той же последовательностью <<<, используемой для heredocs, но следующий ниже идентификатор заключен в одинарные кавычки, например <<< 'EOT'. Все правила для идентификаторов heredoc также применяются к идентификаторам nowdoc, особенно к появлению закрывающего идентификатора.

http://www.php.net/manual/en/language.types.string.php#language.types.string.syntax.nowdoc

 $str = <<<'EOD' Example of string spanning multiple lines using nowdoc syntax. EOD; 

Спасаясь

Если вы хотите использовать литеральные одиночные или двойные кавычки в одиночных или двойных кавычках, вам нужно их избежать:

 $str = '\''; // single quote $str = "\""; // double quote 

Как отметил Герберт, вам не нужно избегать одиночных кавычек в двойных кавычках, и вам не нужно избегать двойных кавычек в одной кавычки.


Если вам нужно добавить кавычки в больших масштабах, используйте функцию addslashes () :

 $str = "Is your name O'reilly?"; echo addslashes($str); // Is your name O\'reilly?