PHPInHTML.php
<?php
class PHPInHTML extends \Tlf\Tester {
public function testPHPInHead(){
$target =
<<<PHP
<!DOCTYPE html>
<html>
<head>
<script></script>
<?php echo "I am some php code"; ?>
</head>
<body>Prison isn't the solution for addiction</body>
</html>
PHP;
$doc = new \Taeluf\PHTML($target);
$actual = $doc->output();
$this->compare($target,$actual);
}
public function testPHPAsAttributeValue(){
$php =
<<<PHP
<div data-happy="<?='Love eachother'?>">Kindness is awesome</div>
PHP;
$target =
<<<HTML
<div data-happy="Love eachother">Kindness is awesome</div>
HTML;
$doc = new \Taeluf\PHTML($php);
file_put_contents($outFile=__DIR__.'/../output/PHPAsAttributeValue.phtml',$doc);
ob_start();
require($outFile);
$output = trim(ob_get_clean());
$this->compare($target, $output);
}
public function testPHPAsAttribute(){
$php =
<<<PHP
<div <?php echo "data-attr=\"good\""; ?> ><?php echo "text"; ?></div>
PHP;
$doc = new \Taeluf\PHTML($php);
file_put_contents($outFile=__DIR__.'/../output/PHPAsAttribute.phtml',$doc);
ob_start();
require($outFile);
$content = trim(ob_get_clean());
$this->compare(
"<div data-attr=\"good\">text</div>",
$content
);
}
public function testPHPAsNode(){
$php = '<div><?php echo "Scripts won\'t save us from corruption." ?></div>';
$doc = new \Taeluf\PHTML($php);
$output = $doc."";
file_put_contents($outFile=__DIR__.'/../output/PHPAsNode.phtml',$output);
ob_start();
require($outFile);
$content = ob_get_clean();
$this->compare(
"<div>Scripts won't save us from corruption.</div>",
$content
);
}
}