使用eval()检查是否设置了常量

Cas*_*ase -1 php eval constants

我试图基于传递变量的单个部分来检查已定义的变量.(变量的其余部分是静态的,并且它的所有其他部分都是相同的),所以我做了一个测试,以确定这是否可行.

它不起作用,但也许我正在做一些容易修复的小事.

define('TEST', 'works');
$test = 't';

echo TES . strtoupper($test);
echo eval('TES . strtoupper('.$test.');');
echo eval('TES . strtoupper(\'$test\');');

echo eval('TES' . strtoupper($test) . ';');
Run Code Online (Sandbox Code Playgroud)

Uri*_*ren 5

如果要检查是否定义了常量,只需使用defined()

<?php
if (defined('TEST')) {
    echo TEST;
}
?>
Run Code Online (Sandbox Code Playgroud)