Вложенность с тремя уровнями котировок


Я пытаюсь создать переменную php, которая имеет три уровня вложенных кавычек. Как мне сделать третий уровень вокруг "tackEvent", "downloads", "all", и "nofilter"? Двойные кавычки, которые у меня там есть, не работают.

  $outputList .= "<a href=files/".$content_file ." onClick='_gaq.push
(["_trackEvent", "downloads", "all", "nofilter"]);' >" . $content_name . 
"</a>";
Author: JSW189, 2011-09-30

4 answers

Из здесь:

  • Внешняя кавычка = " (Это отмечает начало и конец строки)
  • Внутренняя кавычка = \" (Экранирована, чтобы не отмечать "начало/конец строки")
  • Цитата третьего уровня = ' (Буквальная цитата)
  • Цитата четвертого уровня = \' (Буквальная цитата, которая будет сгенерирована как экранированная внешняя цитата)
 28
Author: Nick Brunt, 2011-09-30 19:03:28

Из руководства :

Чтобы указать буквальную одинарную кавычку, экранируйте ее обратной косой чертой (\). Чтобы указать буквальную обратную косую черту, удвойте ее (\\).

Это относится и к строкам в двойных кавычках.

$str = "I am a string with a quote that says, \"I like quotes\"";
 1
Author: Jeff Lambert, 2011-09-30 20:13:17
  • Внешняя цитата: "
  • Внутренняя цитата: '
  • Цитата третьего уровня: \"
  • Цитата четвертого уровня: &quot;
 1
Author: Joaquim Neto, 2017-06-07 20:33:46
$outputList .= <<<LINK
<a href="files/$content_file" onClick="_gaq.push(['_trackEvent', 'downloads', 'all', 'nofilter']);">$content_name</a>
LINK;

Это использование синтаксиса heredoc.

 0
Author: FtDRbwLXw6, 2011-09-30 19:02:03