Server IP : 209.38.156.173 / Your IP : 216.73.216.122 [ Web Server : Apache/2.4.52 (Ubuntu) System : Linux lakekumayuhotel 5.15.0-136-generic #147-Ubuntu SMP Sat Mar 15 15:53:30 UTC 2025 x86_64 User : root ( 0) PHP Version : 8.1.2-1ubuntu2.22 Disable Function : NONE Domains : 2 Domains MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /proc/thread-self/root/usr/share/php/Twig/Node/Expression/Test/ |
Upload File : |
<?php /* * This file is part of Twig. * * (c) Fabien Potencier * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Twig\Node\Expression\Test; use Twig\Compiler; use Twig\Node\Expression\TestExpression; /** * Checks if a variable is the exact same value as a constant. * * {% if post.status is constant('Post::PUBLISHED') %} * the status attribute is exactly the same as Post::PUBLISHED * {% endif %} * * @author Fabien Potencier <fabien@symfony.com> */ class ConstantTest extends TestExpression { public function compile(Compiler $compiler): void { $compiler ->raw('(') ->subcompile($this->getNode('node')) ->raw(' === constant(') ; if ($this->getNode('arguments')->hasNode(1)) { $compiler ->raw('get_class(') ->subcompile($this->getNode('arguments')->getNode(1)) ->raw(')."::".') ; } $compiler ->subcompile($this->getNode('arguments')->getNode(0)) ->raw('))') ; } }