php – 正确使用??操作者
发布时间:2020-12-13 17:55:45 所属栏目:PHP教程 来源:网络整理
导读:在我的项目中,我有一个处理所有 AJAX POST请求的ajax.php.它获取命令,验证所有必需的参数是否存在并将其传递给相关的类. 我见过新的’??’运算符并已开始验证这样的POST参数, $name = $_POST['name'] ?? die('{"result":0,"data":"name not provided"}');$st
在我的项目中,我有一个处理所有
AJAX POST请求的ajax.php.它获取命令,验证所有必需的参数是否存在并将其传递给相关的类.
我见过新的’??’运算符并已开始验证这样的POST参数, $name = $_POST['name'] ?? die('{"result":0,"data":"name not provided"}'); $state = $_POST['state'] ?? die('{"result":0,"data":"state not provided"}'); 我觉得哪个好看, $name = isset($_POST['blah']) ? $_POST['blah'] : die('{"result":0,"data":"blah not provided"}'); 我已经部署并确认它正在运行,但Intellij在第一次使用后对于无法访问的代码非常适合.我想知道我是否滥用语法并且可能被修复或者如果Intellij没有在球上. 我总是对不良做法产生偏执,所以想知道你对语法用法以及整个ajax.php的看法.有一个专门用于基本验证帖子参数的页面是不是很糟糕? (它不验证实际数据,只是它有数据).我也想知道我是否应该将ajax.php拆分成试图将其拆分的路线?你会考虑做类似的事吗? foreach (['name','state'] AS $arg) { $$arg = $_POST[$arg] ?? die("{"result":0,"data":"$arg not provided"}"); } 然后可以返回已处理的值,或者如果丢失则抛出异常/ die,或者您希望每行都有一个参数?
这只是Intellij的一个小故障.我对PHPStorm 10也是一样的.你可以轻松地测试它,以证明你的代码按照你的预期运行,这是布丁中的证据,而不是某些IDE碰巧(错过)解析它的方式.
如果您觉得有帮助,也许可以通过JetBrains提高票价? 我将把你整个问题的第二部分留在 – 正如我在上面的评论中指出的那样 – 这是一个单独的问题,应该相应地提出.并且可能在Code Review结束.如果你确实在那里转移…确保在这里交叉ref (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |