While 循环
Testing Is Documentation
tests/View/Compiler/CompilerWhileTest.php
QueryPHP 支持 while 语法标签,通过这种方式可以很好地将 PHP 的 while 语法布局出来。
code
public function testCode(): void
{
$parser = $this->createParser();
$source = <<<'eot'
{~$i = 10}
{while $i>0}
{$i}Hello QueryPHP !<br>
{~$i--}
{/while}
eot;
$compiled = <<<'eot'
<?php $i = 10; ?>
<?php while ($i>0): ?>
<?php echo $i; ?>Hello QueryPHP !<br>
<?php $i--; ?>
<?php endwhile; ?>
eot;
$this->assertSame($compiled, $parser->doCompile($source, null, true));
}
node
public function testNode(): void
{
$parser = $this->createParser();
$source = <<<'eot'
{~$i = 10}
<while condition="$i gt 0">
{$i}Hello QueryPHP !<br>
{~$i--}
</while>
eot;
$compiled = <<<'eot'
<?php $i = 10; ?>
<?php while($i > 0): ?>
<?php echo $i; ?>Hello QueryPHP !<br>
<?php $i--; ?>
<?php endwhile; ?>
eot;
$this->assertSame($compiled, $parser->doCompile($source, null, true));
}