首页 > 开发 > php > 正文

php 如何进行变量非空判断

2017-09-06 14:59:45  来源:网友分享

用户提交表单的时候会出现多个变量,如何对变量每一个变量进行非空判断,并在所有变量均为非空后才把所有数据录入数据库。
我只知道可以使用empty()进行辨别并输出提示但是不知道如何实现
所有变量均为非空后才把所有数据录入数据库。
如下,我用switch可以实现在有未填项时输出提示,但是无法实现
所有变量均为非空后再录入数据。

<?php//输出提示switch ($_REQUEST){ case empty($_REQUEST['name']):echo" 名程必填";case empty($_REQUEST['reviewer']):echo" 用户名必填"; case empty($_REQUEST['review']):echo" 评论必填";}       //录入数据    $mysql = new SaeMysql();    $sql = "SELECT * FROM `remark` LIMIT 10";    $data = $mysql->getData( $sql );    $name = strip_tags( $_REQUEST['name'] );    $reviewer = $_REQUEST['reviewer'];    $review = $_REQUEST['review'];    $sql = "INSERT  INTO `remark` ( `name`, `review`, `reviewer`, `time`) VALUES ('"  . $name . "' , '"  . $review . "' ,  '"  . $reviewer . "' , NOW() ) ";    $mysql->runSql($sql);    if ($mysql->errno() != 0)    {    die("Error:" . $mysql->errmsg());    }    $mysql->closeDb();    echo $mysql->errmsg()    ?>   

解决方案

function is_empty_variable($variable){    return (!isset($variable) || trim($variable)==='');}

如果是$_REQUEST数组的话:

foreach($_REQUEST as $key => $value){    if(is_empty_variable($value))    {        throw new \Exception("{$key} 为空");    }}