added a note about how to use quotes in strings (closes #973)

This commit is contained in:
Fabien Potencier
2013-02-08 19:58:08 +01:00
parent d13027d163
commit 8b569e49a1
2 changed files with 18 additions and 3 deletions
+3 -2
View File
@@ -569,8 +569,9 @@ exist:
* ``"Hello World"``: Everything between two double or single quotes is a
string. They are useful whenever you need a string in the template (for
example as arguments to function calls, filters or just to extend or
include a template).
example as arguments to function calls, filters or just to extend or include
a template). A string can contain a delimiter if it is preceded by a
backslash (``\``) -- like in ``'It\'s good'``.
* ``42`` / ``42.23``: Integers and floating point numbers are created by just
writing the number down. If a dot is present the number is a float,
+15 -1
View File
@@ -150,7 +150,21 @@ class Twig_Tests_LexerTest extends PHPUnit_Framework_TestCase
$this->assertEquals(922337203685477580700, $node->getValue());
}
public function testString()
public function testStringWithEscapedDelimiter()
{
$tests = array(
"{{ 'foo \' bar' }}" => 'foo \' bar',
'{{ "foo \" bar" }}' => "foo \" bar",
);
$lexer = new Twig_Lexer(new Twig_Environment());
foreach ($tests as $template => $expected) {
$stream = $lexer->tokenize($template);
$stream->expect(Twig_Token::VAR_START_TYPE);
$stream->expect(Twig_Token::STRING_TYPE, $expected);
}
}
public function testStringWithInterpolation()
{
$template = 'foo {{ "bar #{ baz + 1 }" }}';