Php nếu _POST không trống

Bạn có thể sử dụng hàm PHP empty[] để tìm hiểu xem một biến có trống hay không. Một biến được coi là rỗng nếu nó không tồn tại hoặc nếu giá trị của nó bằng FALSE

Hãy thử ví dụ sau để hiểu cơ bản chức năng này hoạt động như thế nào

";
 
if[empty[$var2]]{
    echo 'This line is printed, because the $var2 is empty.';
}
echo "
"; if[empty[$var3]]{ echo 'This line is printed, because the $var3 is empty.'; } echo "
"; if[empty[$var4]]{ echo 'This line is printed, because the $var4 is empty.'; } echo "
"; if[empty[$var5]]{ echo 'This line is printed, because the $var5 is empty.'; } ?>

Ghi chú. Hàm empty[] không tạo cảnh báo nếu biến không tồn tại. Điều đó có nghĩa là empty[] tương đương với !isset[$var] || $var == false

Nói cách khác, chỉ những biến không tồn tại [hoặc biến có giá trị NULL nghiêm ngặt] mới trả về FALSE trên hàm isset[]. Tất cả các biến có bất kỳ loại giá trị nào, cho dù đó là 0, chuỗi văn bản trống, v.v. sẽ trở lại TRUE

Một điều khác bạn cần biết là các vùng văn bản và hộp văn bản trong biểu mẫu sẽ được gửi với giá trị “” thay vì giá trị NULL tới mảng

if[!empty[$_POST[myField]]] 
{
  //Do my PHP code
}
5

Do đó, nếu bạn đang cố gắng xử lý một biểu mẫu và bạn muốn chắc chắn rằng người đó đã nhập nội dung nào đó vào trường, tốt hơn hết là bạn nên kiểm tra xem liệu giá trị biểu mẫu có trống hay không, hơn là kiểm tra xem liệu giá trị đó có trống không. Mặt khác, nếu bạn đang cố kiểm tra giá trị của nút radio hoặc hộp tổ hợp trong đó một trong các giá trị có thể là “0”, thì bạn nên sử dụng hàm isset[]

Đối với một vài bộ xử lý biểu mẫu đầu tiên mà tôi làm việc, tôi đã sử dụng mã sau đây một cách nhất quán

if[isset[$_POST[myField]] && $_POST[myField] != ""] 
{
  //Do my PHP code
}

Một cách hiệu quả hơn để làm điều này rõ ràng là sử dụng

if[!empty[$_POST[myField]]] 
{
  //Do my PHP code
}

Chỉ là một mẹo nhanh cho những người đấu tranh với điều này. Có hai điểm chính trong bài viết này

1] isset[]empty[] không đối lập hoàn toàn với nhau. Họ thực sự kiểm tra hai điều rất khác nhau. Do đó, sử dụng empty[]0 không giống như sử dụng empty[], cũng không phải là “. trống” giống như sử dụng isset[]. Đó là một điều tốt, nhưng đó không phải là điều mà bạn thường nhận ra ngay lập tức

2] Biểu mẫu sẽ gửi giá trị trống đến mảng

if[!empty[$_POST[myField]]] 
{
  //Do my PHP code
}
5 thay vì gửi giá trị NULL. Do đó, biến mà bạn thường kiểm tra từ biểu mẫu của mình, theo nghĩa chặt chẽ nhất của từ này, là “set”. Tuy nhiên, nó vẫn có thể có giá trị “rỗng”. Do đó, nếu bạn thực sự chỉ muốn kiểm tra xem biến có tồn tại hay không, ngay cả khi nó có giá trị rỗng [hoặc nếu bạn muốn kiểm tra xem biến có tồn tại hay không], thì bạn nên sử dụng hàm isset[]. Tuy nhiên, nếu bạn muốn kiểm tra xem biến có [hoặc không có] giá trị trống hay không, thì tốt hơn hết bạn nên sử dụng hàm empty[]5

Tôi hy vọng điều đó sẽ giúp ai đó ngoài kia tránh được một số lỗi mã hóa mà tôi đã mắc phải khi bắt đầu trò chơi. Vui thích

The following is an example of how to test if a variable is set, whether or not it is NULL. It makes use of the fact that an unset variable will throw an E_NOTICE error, but one initialized as NULL will not.

function var_exists[$var]{
    if [empty[$GLOBALS['var_exists_err']]] {
        return true;
    } else {
        unset[$GLOBALS['var_exists_err']];
        return false;
    }
}

function var_existsHandler[$errno, $errstr, $errfile, $errline] {
   $GLOBALS['var_exists_err'] = true;
}

$l = NULL;
set_error_handler["var_existsHandler", E_NOTICE];
echo [var_exists[$l]] ? "True " : "False ";
echo [var_exists[$k]] ? "True " : "False ";
restore_error_handler[];

?>

Outputs:
True False

The problem is, the set_error_handler and restore_error_handler calls can not be inside the function, which means you need 2 extra lines of code every time you are testing. And if you have any E_NOTICE errors caused by other code between the set_error_handler and restore_error_handler they will not be dealt with properly. One solution:

function var_exists[$var]{
   if [empty[$GLOBALS['var_exists_err']]] {
       return true;
   } else {
       unset[$GLOBALS['var_exists_err']];
       return false;
   }
}

function var_existsHandler[$errno, $errstr, $errfile, $errline] {
    $filearr = file[$errfile];
    if [strpos[$filearr[$errline-1], 'var_exists'] !== false] {
        $GLOBALS['var_exists_err'] = true;
        return true;
    } else {
        return false;
    }
}

$l = NULL;
set_error_handler["var_existsHandler", E_NOTICE];
echo [var_exists[$l]] ? "True " : "False ";
echo [var_exists[$k]] ? "True " : "False ";
is_null[$j];
restore_error_handler[];

?>

function var_exists[$var]{
    if [empty[$GLOBALS['var_exists_err']]] {
        return true;
    } else {
        unset[$GLOBALS['var_exists_err']];
        return false;
    }
}
1

function var_exists[$var]{
    if [empty[$GLOBALS['var_exists_err']]] {
        return true;
    } else {
        unset[$GLOBALS['var_exists_err']];
        return false;
    }
}
2

Làm thế nào để sử dụng không trống trong PHP?

Để kiểm tra xem biến PHP của bạn có trống không, bạn có thể phủ định hàm empty[] bằng cách sử dụng toán tử bang [. ] . Hàm PHP empty[] được sử dụng để kiểm tra xem một biến rỗng hay NULL. Để kiểm tra xem một biến PHP có rỗng không, bạn có thể gọi hàm rỗng phủ định hoặc.

Làm cách nào để kiểm tra xem biến bài đăng có phải là NULL PHP không?

Để kiểm tra một biến có null hay không, chúng ta sử dụng hàm is_null[] . Một biến được coi là NULL nếu nó không lưu trữ bất kỳ giá trị nào. Nó trả về TRUE nếu giá trị của biến $var là NULL, ngược lại, trả về FALSE.

Làm cách nào để kiểm tra xem _POST có trống trong PHP không?

Bạn có thể thực hiện việc này theo ba cách. .
if[isset[$_POST['value1']]] { //. }
nếu[. trống[$_POST['value1']]] { //. }
và cách đơn giản if[$_POST['value1']==""] {. }

Làm cách nào để bạn kiểm tra xem một biến có được gửi trong yêu cầu POST hay không và liệu nó có bất kỳ giá trị nào trong PHP không?

Hàm PHP isset[] . Ghi chú. Nếu nhiều biến được cung cấp, thì hàm này sẽ chỉ trả về true nếu tất cả các biến được đặt. Mẹo. Một biến có thể được bỏ đặt bằng hàm unset[].

Chủ Đề