原来 isset($_POST) 永远是真值,!empty($_POST)才可以判断,坑人啊

2022-10-28 16:44:56 +08:00
 qinrui

isset 判断 POST 没啥意义啊,但网上好多代码都是这么写的

2714 次点击
所在节点    PHP
25 条回复
eviladan0s
2022-10-29 13:54:39 +08:00
isset($_POST['test'])这种才行,超全局遍历肯定是一直存在的
jhdxr
2022-10-30 18:03:02 +08:00
@qinrui
https://www.php.net/manual/en/reserved.variables.post.php
> This is a 'superglobal', or automatic global, variable. This simply means that it is available in all scopes throughout a script.

https://www.w3schools.com/php/php_superglobals_post.asp
> Super global variables are built-in variables that are always available in all scopes.

不知道你觉得『不往页面 post 数据』$_POST 就不存在的想法是哪来的(还是说你不知道 isset 判断的不是是否为空而是变量是否存在)?
NewYear
2022-10-31 10:16:27 +08:00
面向复制编程,也应该做一些测试的。

很多分享的代码,都是错代码,而且错得让人不明所以……
NewYear
2022-10-31 10:18:30 +08:00
我甚至遇到过,代码都是对的,但是有一句语句放错了位置,调整好位置就可以用了……
pytth
2022-11-23 00:14:01 +08:00
empty($_POST["xxx"]) || isset($_POST["xxx"])

我喜欢双重判断,总有一个中招

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/890759

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX