开发者社区> 问答> 正文

PHP如何判断提交的某字段不为空?

PHP,有什么简便的方法,判断提交的某字段不为空?

展开
收起
落地花开啦 2016-06-15 16:43:03 2410 0
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人

    提交的某字段,一定是_POST、_GET甚至_REQUEST,而不是单纯讨论$var。

    要防三个情况:

    1.提交中根本没有这个字段(如果不处理,下标不存在将直接引发运行时错误)
    2.提交的字段为空
    3.提交的字段trim()之后为空

    如果是原生的PHP,我推荐的步骤如下:

    1.原则是先预处理$_POST。
    2.把$_POST中所有元素的首尾空格剥了。
    3.把$_POST中的所有空元素扔了。
    4.这样,数组中幸存的元素,就都不是空的。判断元素是否存在即可。

    注意第二和第三步,千万不要傻傻的用foreach自己循环,最好是使用数组函数里的几个遍历函数。代码:

    $_POST = array_map('trim', $_POST);
    $_POST = array_filter($_POST);
    $result = array_key_exists('fieldname', $_POST);
    if ($result) {
        // do whatever you wish
    }

    这样足够简便了,不过带来的问题是可移植性差(因为需要依赖前边做过的预处理)。如果想要可移植性又好,看着又简单,判断又全面的,自己写函数去吧。

    2019-07-17 19:39:40
    赞同 展开评论 打赏
问答分类:
PHP
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
阿里云栖开发者沙龙PHP技术专场-深入浅出网络编程与swoole内核-吴镇宇 立即下载
PHP安全开发:从白帽角度做安全 立即下载
PHP 2017.北京 全球开发者大会——高可用的PHP 立即下载