可能重复:
检查 $_POST-value 是否为空
我正在使用此代码来验证传递的输入是否不为空,但是当我在输入中使用“空白”时这会失败。它确实通过了 empty() 检查。
if (empty($_POST['r_user'])) {
$data['error'] = 'Please pick a username to continue.';
$data['errorID'] = 'r_user';
}
在 PHP 中检查空字符串的正确方法是什么?
可能重复:
检查 $_POST-value 是否为空
我正在使用此代码来验证传递的输入是否不为空,但是当我在输入中使用“空白”时这会失败。它确实通过了 empty() 检查。
if (empty($_POST['r_user'])) {
$data['error'] = 'Please pick a username to continue.';
$data['errorID'] = 'r_user';
}
在 PHP 中检查空字符串的正确方法是什么?
您需要trim function
在检查变量之前使用。
$trimUser= trim ($_POST['r_user']);
现在执行空方法。
根据PHP 文档建议,您的代码将变为:
if (trim($_POST['r_user']) == false) {
$data['error'] = 'Please pick a username to continue.';
$data['errorID'] = 'r_user';
}
您可以在这里很好地使用修剪,它会删除前后的空白:
if (empty(trim($_POST['r_user']))) { // Incorrect!
编辑,哇,今天学到了新东西。
但是,这将起作用:
$var=trim($_POST['r_user']);
if (empty($var)) {
工作示例:
<?php
$var=' ';
$var=trim($var);
if(empty($var))
echo "Yay";
else
echo "Nay!";
?>
输出:
耶
if ( empty( trim( $_POST['r_user'] ))) {
// 错误的!给出一个错误 - 学到了一些新东西 :) // 正确的方法应该是:
$myvar = trim( $_POST['r_user'] );
if ( empty( $myvar )) {
或者
if ( trim( $_POST['r_user'] ) != '' ) {
您可以使用:
$var = '';
if (array_key_exists('r_user', $_POST)) {
$var = trim($_POST['r_user']);
}
if (empty($var)) {
// do some stuffs
}
反而。
if(isset($_POST['r_user'])){
// ur code
}