gpt4 book ai didi

php - 为什么当我使用 isset() 时会抛出一个恒定的 fatal error ?

转载 作者:行者123 更新时间:2023-12-03 19:30:23 24 4
gpt4 key购买 nike

我在脚本中使用 isset(),如果我使用常量而不是变量,似乎会引发 fatal error 。

我的问题:为什么当我使用 isset() 时会抛出一个恒定的 fatal error ?

<?php

switch($current_page) {
case 'kb':
define('TITLE', 'Knowledge Base');
break;
case 'edit':
define('TITLE', 'Edit');
break;
case 'new':
define('TITLE', 'New');
break;
}
...
...
...
if (isset(TITLE)) {
echo "<h1>".TITLE."</h1>";
}

我运行了一些测试,发现常量和变量都具有相同的数据类型:

define('TITLE', 'Test');
$title = 'Test';

var_dump(TITLE); // string(4) "Test"
var_dump($title); // string(4) "Test"

我检查了http://php.net/manual/en/language.constants.php并且没有看到任何可以解释这一点的东西。

最佳答案

PHP Documentation

Warning
isset() only works with variables as passing anything else will result in a parse error. For checking if constants are set use the defined() function.

关于php - 为什么当我使用 isset() 时会抛出一个恒定的 fatal error ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45909677/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com