我遇到了解析错误,并且我认为是由于引号引起的"time"。我怎样才能将其视为一个整体字符串?
"time"
<?php $text1 = 'From time to "time" this submerged or latent theater in 'Hamlet' becomes almost overt. It is close to the surface in Hamlet's pretense of madness, the "antic disposition" he puts on to protect himself and prevent his antagonists from plucking out the heart of his mystery. It is even closer to the surface when Hamlet enters his mother's room and holds up, side by side, the pictures of the two kings, Old Hamlet and Claudius, and proceeds to describe for her the true nature of the choice she has made, presenting truth by means of a show. Similarly, when he leaps into the open grave at Ophelia's funeral, ranting in high heroic terms, he is acting out for Laertes, and perhaps for himself as well, the folly of excessive, melodramatic expressions of grief."; $text2 = 'From time to "time"'; similar_text($textl, $text2, $p); echo "Percent: $p%";
问题是我不能\在每个引号之前手动添加。这是我需要比较的实际文本。
\
像这样使用反斜杠
"From time to \"time\"";
在PHP中,反斜杠用于转义引号内的特殊字符。由于PHP不能区分字符串和字符,因此您也可以使用
'From time to "time"';
单引号和双引号之间的区别在于,双引号允许对字符串进行插值,这意味着您可以在字符串中内联引用变量,并且它们的值将像在字符串中那样进行求值
$name = 'Chris'; $greeting = "Hello my name is $name"; //equals "Hello my name is Chris"
根据您对问题的最后一次修改,我认为您可能能够做到的最简单的事情是使用“ heredoc”。它们并不常用,老实说,我通常不会推荐它,但是如果您想要一种快速的方法将文本墙放入单个字符串中,则不推荐使用。可以在以下位置找到语法:http : //www.php.net/manual/zh/language.types.string.php#language.types.string.syntax.heredoc,下面是一个示例:
$someVar = "hello"; $someOtherVar = "goodbye"; $heredoc = <<<term This is a long line of text that include variables such as $someVar and additionally some other variable $someOtherVar. It also supports having 'single quotes' and "double quotes" without terminating the string itself. heredocs have additional functionality that most likely falls outside the scope of what you aim to accomplish. term;