Xác thực ngày php dd mm yyyy

Cần kiểm tra xem các giá trị ngày tháng có hợp lệ hay không hợp lệ khi làm việc với các giá trị ngày tháng. Nếu giá trị ngày không được lấy ở định dạng chính xác, thì đầu ra sai sẽ được tạo. Vì vậy, xác thực ngày là một nhiệm vụ rất quan trọng đối với ứng dụng. Giá trị ngày có thể được xác thực bằng cách sử dụng nhiều hàm trong PHP. Một là hàm checkdate() và một là hàm createFromFormat() nằm dưới lớp DateTime của PHP. Việc sử dụng các hàm này để xác thực ngày trong PHP đã được trình bày trong hướng dẫn này

Xác thực ngày bằng cách sử dụng hàm checkdate()

Sử dụng hàm checkdate() là một trong những cách để xác thực ngày tháng trong PHP. Cú pháp của chức năng này được đưa ra dưới đây

cú pháp

bool ngày kiểm tra( int $tháng, int $day, int $year)

Hàm này có ba đối số và tất cả các đối số của hàm này là bắt buộc. Nó trả về True nếu giá trị ngày hợp lệ. Nếu không, nó trả về Sai. Các cách sử dụng khác nhau của hàm checkdate() được trình bày trong phần này của hướng dẫn

ví dụ 1. Kiểm tra tính hợp lệ của các loại ngày khác nhau

Tạo một tệp PHP với tập lệnh sau để kiểm tra tính hợp lệ của năm ngày bằng hàm checkdate(). Hàm var_dump() đã được sử dụng để kiểm tra đầu ra của hàm checkdate()

/*Kiểm tra tính hợp lệ của các loại giá trị ngày khác nhau *///Ngày không hợp lệ

/*Check the validity of different types of date values */

//Invalid date
echo var_dump(checkdate(30,9,2022)), "
"
;

//Valid date
echo var_dump(checkdate(12,16,2022)), "
"
;

//Valid date
echo var_dump(checkdate(2,29,2020)), "
"
;

//Invalid date
echo var_dump(checkdate(2,29,2022)), "
"
;

//Valid date
echo var_dump(checkdate(9,7,2022));

?>

Đầu ra sau sẽ xuất hiện sau khi thực thi tập lệnh trước đó

Xác thực ngày php dd mm yyyy

ví dụ 2. In tin nhắn dựa trên đầu ra của hàm checkdate()

Tạo tệp PHP với tập lệnh sau để kiểm tra giá trị trả về của hàm checkdate() và in thông báo dựa trên giá trị được trả về

//Xác định giá trị ngày, tháng và năm$day=< . ";khác    tiếng vang" . ";?>

//Define the day, month, and year values
$day = 15;
$month = 10;
$year = 2022;

//Assign the return values
$valid = checkdate($month,$day,$year);

if ($valid)
    echo "$day-$month-$year date is valid.";
else
    echo "$day-$month-$year date is valid.";

?>

Đầu ra sau sẽ xuất hiện sau khi thực thi tập lệnh trước đó

Xác thực ngày php dd mm yyyy

ví dụ 3. Kiểm tra tính hợp lệ của ngày lấy từ người dùng

Tạo một tệp PHP với tập lệnh sau sẽ lấy ngày sinh bằng biểu mẫu HTML và kiểm tra xem ngày đó có hợp lệ hay không bằng cách sử dụng hàm checkdate()



<form action="#" method="post">

  Enter your birthday:
      < br />< . />
    <input type="text" name="m" placeholder="Month" size=3>
    <input type="text" name="d" placeholder="Day" size=3>
    <input type="text" name="y" placeholder="Year" size=3><br /><br />
    <input type="submit" name="submit" value="Submit">


form>



//Check whether the form is submitted or not
if(isset($_POST['submit']))
{
    $month = (int) $_POST['m'];
    $day   = (int) $_POST['d'];
    $year  = (int) $_POST['y'];
   
    //Check whether the date is valid or invalid
    $valid = checkdate($month, $day, $year);
 
    //Print message based on the returned value of the checkdate() function
    if ($valid)
        $msg = $day.'-'. $tháng. '-'. $năm. ' (dd-mm-yyyy) ngày hợp lệ. ;
      khác
        $msg = $day.'-'. $tháng. '-'. $năm. ' (dd-mm-yyyy) ngày không hợp lệ. ';

    //In tin nhắn
    echo $msg;
}

?>

Biểu mẫu sau sẽ xuất hiện sau khi thực hiện tập lệnh trước đó

Xác thực ngày php dd mm yyyy
Thông báo sau sẽ xuất hiện sau khi gửi biểu mẫu có giá trị ngày sinh, 16-12-2006

Xác thực ngày php dd mm yyyy

Xác thực ngày bằng hàm createFromFormat()

Sử dụng hàm createFromFormat() của lớp DateTime là một cách khác để kiểm tra tính hợp lệ của một ngày tháng. Cú pháp của chức năng này được cung cấp dưới đây

cú pháp

DateTime date_create_from_format ( chuỗi $format, string $time, DateTimeZone $timezone )

Or

DateTime DateTime::createFromFormat( chuỗi $format, string $time, DateTimeZone $timezone )

Đối số đầu tiên của hàm này là bắt buộc và nó được sử dụng để lấy chuỗi định dạng của ngày và giờ. Đối số thứ hai của hàm này là bắt buộc và được sử dụng để lấy giá trị ngày, giờ hoặc ngày giờ. Đối số thứ ba là tùy chọn và được sử dụng để đặt múi giờ. Nó trả về một đối tượng DateTime khi thành công và Sai khi thất bại. Các cách sử dụng khác nhau của chức năng này đã được trình bày trong phần này của hướng dẫn

Ví dụ 4. Kiểm tra tính hợp lệ của ngày bằng cách sử dụng hàm createFromFormat() và format()

Tạo một tệp PHP với tập lệnh sau để kiểm tra xem một ngày cụ thể có hợp lệ hay không bằng cách sử dụng các hàm createFromFormat() và format(). Hàm createFromFormat() đã được sử dụng để tạo đối tượng DateTime của giá trị ngày và hàm format() đã được sử dụng để kiểm tra tính hợp lệ của giá trị ngày

//Gán giá trị ngày tháng dưới dạng chuỗi$dateVal=createFromFormat('d-M-Y',;khác    tiếng vang" . ";?>

//Assign a date value as a string

$dateVal = "31-Sep-2022";

//Create date object by using the createFromFormat() function

$objDate = DateTime::createFromFormat('d-M-Y', $dateVal);

//Check the date is valid or invalid

if($objDate && $objDate->format('d-M-Y') == $dateVal)

    echo "$dateVal date is valid.";
else
    echo "$dateVal date is invalid.";

?>

Đầu ra sau sẽ xuất hiện sau khi thực thi tập lệnh trước đó

Xác thực ngày php dd mm yyyy

Ví dụ 5. Kiểm tra tính hợp lệ của ngày bằng cách sử dụng hàm createFromFormat() và getLastErrors()

Tạo một tệp PHP với tập lệnh sau sẽ kiểm tra xem một ngày cụ thể có hợp lệ hay không bằng cách sử dụng các hàm createFromFormat() và getLastErrors(). Hàm createFromFormat() được sử dụng để tạo đối tượng DateTime của giá trị ngày tháng. Sau đó, hàm getLastErrors() được sử dụng để kiểm tra tính hợp lệ của giá trị ngày bằng cách kiểm tra các giá trị của mảng được trả về bởi hàm này

if(isset(createFromFormat('d-M-Y',getLastErrors();    < . =0 hoặc $errors[0)        echo" . ";    khác        echo< . ";}else    echo . ";?>

if(isset($_GET['dt']))

{

    //Assign a date value as a string
    $dateVal = $_GET['dt'];
    //Generate formatted date
    $formattedDate = DateTime::createFromFormat('d-M-Y', $dateVal);

    //Read errors in a variable
    $errors = DateTime::getLastErrors();

    //Check for error
    if ($errors['warning_count'] != 0 or $errors['error_count'] != 0)
        echo "$dateVal is invalid.";
    else
        echo "$dateVal is valid.";
}
else
    echo "No date value has been given.";

?>

Đầu ra sau sẽ xuất hiện sau khi thực thi tập lệnh trước đó nếu không có giá trị ngày nào được cung cấp trong tham số URL

Xác thực ngày php dd mm yyyy

Đầu ra sau sẽ xuất hiện sau khi thực thi tập lệnh trước đó nếu giá trị ngày 31 tháng 9 năm 2022 được cung cấp trong tham số URL và giá trị này không hợp lệ

Xác thực ngày php dd mm yyyy

Đầu ra sau đây sẽ xuất hiện sau khi thực thi tập lệnh trước đó nếu giá trị ngày 30 tháng 9 năm 2022 được cung cấp trong tham số URL và giá trị này hợp lệ

Xác thực ngày php dd mm yyyy

Phần kết luận

Hai cách kiểm tra tính hợp lệ của ngày tháng đã được trình bày trong hướng dẫn này bằng cách sử dụng hàm checkdate() và hàm createFromFormat() của lớp DateTime bằng cách sử dụng nhiều ví dụ. Hy vọng rằng người dùng PHP có thể kiểm tra tính hợp lệ của ngày sau khi đọc hướng dẫn này

Làm cách nào để lấy ngày trong dd

Trong ví dụ bên dưới, chúng tôi có ngày 2019-09-15 ở định dạng YYYY-MM-DD và chúng tôi sẽ chuyển đổi ngày này thành 15-09-2019 ở định dạng DD-MM-YYYY. $orgDate = "2019-09-15"; $newDate = date("d-m-Y", strtotime($orgDate));

Làm cách nào để xác thực định dạng ngày trong PHP?

Hàm validateDate() kiểm tra xem chuỗi đã cho có phải là ngày hợp lệ hay không bằng cách sử dụng PHP . Nó sử dụng lớp DateTime của PHP để xác thực ngày dựa trên định dạng đã chỉ định. Hàm này trả về TRUE nếu chuỗi ngày hợp lệ, nếu không thì FALSE.

Làm cách nào để đặt xác thực ngày trong PHP?

Giá trị ngày tháng có thể được xác thực bằng cách sử dụng nhiều hàm trong PHP. Một là hàm checkdate() và một là hàm createFromFormat() thuộc lớp DateTime của PHP .

Làm cách nào để chuyển đổi yyyy mm dd sang yyyy mm dd trong PHP?

Trả lời. Sử dụng Hàm strtotime() .