我觉得它应该工作,我的逻辑是正确的,并且在托管文本编辑器上没有错误显示,但是错误。
Fatal error: Cannot use isset() on the result of an expression (you can use "null !== expression" instead)出现了
这是密码
if (!isset(htmlentities($_POST['test'], ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML5, "UTF-8")) == "test123") {
echo "ERROR!1<br>";
}我应该首先在不同的变量和best实体上保存$_post‘best’,还是最好的方法?
发布于 2022-01-31 06:23:35
您在问题中定义的代码应该如下所示
if (isset($_POST['test'])) {
if (htmlentities($_POST['test'], ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML5, "UTF-8") !== "test123") {
echo "ERROR!1<br>";
}
} else {
echo "ERROR!1<br>";
}我在第一节中使用了2个if语句,所以行没有那么长。如果您愿意,可以随意地将它们合并成一条语句。
另一方面,您真的需要htmlentities函数吗?你应该检查一下你的逻辑,我不能根据这个问题来判断。如果没有,则代码如下所示:
if (!isset($_POST['test']) {
echo "ERROR!1<br>";
} else {
if ($_POST['test'] !== "test123") {
echo "ERROR!1<br>";
}
}发布于 2022-01-31 06:23:15
我修正了...I,只是将much实体存储到外部变量,而不是比较它,而是否定它,我认为它非常美观。
$test = htmlentities($_POST['test'], ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML5, "UTF-8");
if ($test != "test123") {
echo "ERROR!!<br>";
}https://stackoverflow.com/questions/70921782
复制相似问题