Hướng dẫn get dates between two dates php - lấy ngày giữa hai ngày php

Tôi yêu một lớp lót vững chắc!

Phát hiện PHP của tôi trong ngày là array_push() trả về số lượng phần tử mới trong mảng.

Tôi quản lý để kiểm tra trận đấu ngày kết thúc, tăng $ x và đẩy tất cả các yếu tố mới trong câu lệnh điều kiện hai phần của một vòng lặp trống.

function getDatesFromRange($a,$b,$x=0,$dates=[]){
    while(end($dates)!=$b && $x=array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
    return $dates;
}
var_export(getDatesFromRange('2010-10-01','2010-10-05'));

Chức năng tương tự nhất của tôi trên trang này là Drolex's (mà tôi không thực sự tìm thấy cho đến khi tôi viết của tôi, nếu bạn tin tôi). Tôi đã thực hiện một số bài kiểm tra tốc độ trên các phạm vi ngày lớn và nhỏ và họ dường như đánh nhau thường xuyên - vì vậy tôi gọi chúng là những người biểu diễn bình đẳng. Dưới đây là một số so sánh khác:

  • Cả hai chúng tôi đều sử dụng date(), strtotime() và hai hàm mảng.
  • Drolex chỉ sử dụng ba biến, tôi sử dụng cùng ba cộng với $x.
  • Vì tải ngày bắt đầu vào mảng
    function getDatesFromRange($a,$b,$x=0,$dates=[]){
        while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
        return $dates;
    }
    var_export(getDatesFromRange('2010-10-05','2010-10-01'));
    
    0 là không cần thiết cho chức năng của tôi, tôi có thể khai báo nó trong các tham số chức năng và dự phòng dòng (tương tự như $x).

** Chỉ là một vài ghi chú quan trọng:

Các chuỗi 1 ngày phải được xác nhận trước khi được đưa vào chức năng.

2- Hàm trên chỉ có thể xử lý phạm vi ngày di chuyển chuyển tiếp. Nếu bạn muốn phạm vi ngày di chuyển lùi, chỉ cần đảo ngược thứ tự ngày trong cuộc gọi chức năng và thêm trừ sau

function getDatesFromRange($a,$b,$x=0,$dates=[]){
    while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
    return $dates;
}
var_export(getDatesFromRange('2010-10-05','2010-10-01'));
2. (Khá lắt léo, hả?)If you want backward moving date ranges, simply reverse the date order in the function call and add a minus after
function getDatesFromRange($a,$b,$x=0,$dates=[]){
    while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
    return $dates;
}
var_export(getDatesFromRange('2010-10-05','2010-10-01'));
2.
(Pretty slick, eh?)

function getDatesFromRange($a,$b,$x=0,$dates=[]){
    while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
    return $dates;
}
var_export(getDatesFromRange('2010-10-05','2010-10-01'));

Thêm một phần mở rộng/cân nhắc ...

Hãy tưởng tượng bạn có một cơ sở người dùng đa văn hóa (hoặc cẩu thả) và chức năng của bạn phải có khả năng nhận ngày bắt đầu và kết thúc ở các định dạng hợp lệ khác nhau và bạn cần có thể xuất mảng ở bất kỳ định dạng hợp lệ nào? Bằng cách điều chỉnh nhỏ, tôi đã cung cấp một giải pháp cho điều đó.

Bằng cách "hợp lệ", ý tôi là

function getDatesFromRange($a,$b,$x=0,$dates=[]){
    while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
    return $dates;
}
var_export(getDatesFromRange('2010-10-05','2010-10-01'));
3,
function getDatesFromRange($a,$b,$x=0,$dates=[]){
    while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
    return $dates;
}
var_export(getDatesFromRange('2010-10-05','2010-10-01'));
4 và
function getDatesFromRange($a,$b,$x=0,$dates=[]){
    while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
    return $dates;
}
var_export(getDatesFromRange('2010-10-05','2010-10-01'));
5, đây là những tiêu chuẩn phổ biến lớn trên toàn thế giới, nếu một định dạng khác là cần thiết thì khả năng sử dụng sẽ đi xuống sự hiểu biết của ____ 16 về nó.

Đây là bản demo.

Code:

function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
    while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
    return $dates;
}

$formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
$start='15-02-2017';    // Non-American formatted start date
$end='2017-02-27';  // Computer formatted start date
foreach($formats as $label=>$format){
    echo "
$label
"; var_export(getDatesFromRange($start,$end,$format)); echo "
"; }

Đầu ra

Computer
array ( 0 => '2017-02-15', 1 => '2017-02-16', 2 => '2017-02-17', 3 => '2017-02-18',
        4 => '2017-02-19', 5 => '2017-02-20', 6 => '2017-02-21', 7 => '2017-02-22',
        8 => '2017-02-23', 9 => '2017-02-24', 10 => '2017-02-25', 11 => '2017-02-26',
        12 => '2017-02-27', )

American
array ( 0 => '02/15/2017', 1 => '02/16/2017', 2 => '02/17/2017', 3 => '02/18/2017',
        4 => '02/19/2017', 5 => '02/20/2017', 6 => '02/21/2017', 7 => '02/22/2017',
        8 => '02/23/2017', 9 => '02/24/2017', 10 => '02/25/2017', 11 => '02/26/2017',
        12 => '02/27/2017', )

Non-American
array ( 0 => '15-02-2017', 1 => '16-02-2017', 2 => '17-02-2017', 3 => '18-02-2017',
        4 => '19-02-2017', 5 => '20-02-2017', 6 => '21-02-2017', 7 => '22-02-2017',
        8 => '23-02-2017', 9 => '24-02-2017', 10 => '25-02-2017', 11 => '26-02-2017',
        12 => '27-02-2017', )

Bây giờ một số người không tin tưởng 100% strtotime () vì một số hành vi lỗi. Tôi nghĩ rằng tôi đã đọc rằng nó sẽ phạm lỗi khi cố gắng nhảy một tháng từ một ngày bước nhảy vọt. Tuy nhiên, trừ khi ai đó có thể tái tạo nó để chứng minh tôi sai, Strtotime () sẽ không bao giờ làm bạn thất vọng khi bạn chỉ tăng thêm một ngày.

Xem thảo luận

Cải thiện bài viết

Lưu bài viết

  • Đọc
  • Bàn luận
  • Xem thảo luận

    Cải thiện bài viết

    Lưu bài viết

    Đọc

    Bàn luận In this example, use date interval class which stores fixed amount of time (in years, months, days, hours etc) or relative time string in the format that DateTime.

    function getDatesFromRange($a,$b,$x=0,$dates=[]){
        while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
        return $dates;
    }
    var_export(getDatesFromRange('2010-10-05','2010-10-01'));
    
    7

    Cho hai ngày (ngày bắt đầu và ngày kết thúc) và nhiệm vụ là trả về tất cả các ngày trong một mảng.

    Ví dụ 1: Trong ví dụ này, sử dụng lớp khoảng thời gian ngày lưu trữ lượng thời gian cố định (tính theo năm, tháng, ngày, giờ, v.v.) hoặc chuỗi thời gian tương đối theo định dạng mà DateTime.

    function getDatesFromRange($a,$b,$x=0,$dates=[]){
        while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
        return $dates;
    }
    var_export(getDatesFromRange('2010-10-05','2010-10-01'));
    
    8
    function getDatesFromRange($a,$b,$x=0,$dates=[]){
        while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
        return $dates;
    }
    var_export(getDatesFromRange('2010-10-05','2010-10-01'));
    
    9
    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    0
    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    1
    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    2221
    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    4
    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    5
    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    6
    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    7

    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    8
    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    9
    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    5
    Computer
    array ( 0 => '2017-02-15', 1 => '2017-02-16', 2 => '2017-02-17', 3 => '2017-02-18',
            4 => '2017-02-19', 5 => '2017-02-20', 6 => '2017-02-21', 7 => '2017-02-22',
            8 => '2017-02-23', 9 => '2017-02-24', 10 => '2017-02-25', 11 => '2017-02-26',
            12 => '2017-02-27', )
    
    American
    array ( 0 => '02/15/2017', 1 => '02/16/2017', 2 => '02/17/2017', 3 => '02/18/2017',
            4 => '02/19/2017', 5 => '02/20/2017', 6 => '02/21/2017', 7 => '02/22/2017',
            8 => '02/23/2017', 9 => '02/24/2017', 10 => '02/25/2017', 11 => '02/26/2017',
            12 => '02/27/2017', )
    
    Non-American
    array ( 0 => '15-02-2017', 1 => '16-02-2017', 2 => '17-02-2017', 3 => '18-02-2017',
            4 => '19-02-2017', 5 => '20-02-2017', 6 => '21-02-2017', 7 => '22-02-2017',
            8 => '23-02-2017', 9 => '24-02-2017', 10 => '25-02-2017', 11 => '26-02-2017',
            12 => '27-02-2017', )
    
    1
    Computer
    array ( 0 => '2017-02-15', 1 => '2017-02-16', 2 => '2017-02-17', 3 => '2017-02-18',
            4 => '2017-02-19', 5 => '2017-02-20', 6 => '2017-02-21', 7 => '2017-02-22',
            8 => '2017-02-23', 9 => '2017-02-24', 10 => '2017-02-25', 11 => '2017-02-26',
            12 => '2017-02-27', )
    
    American
    array ( 0 => '02/15/2017', 1 => '02/16/2017', 2 => '02/17/2017', 3 => '02/18/2017',
            4 => '02/19/2017', 5 => '02/20/2017', 6 => '02/21/2017', 7 => '02/22/2017',
            8 => '02/23/2017', 9 => '02/24/2017', 10 => '02/25/2017', 11 => '02/26/2017',
            12 => '02/27/2017', )
    
    Non-American
    array ( 0 => '15-02-2017', 1 => '16-02-2017', 2 => '17-02-2017', 3 => '18-02-2017',
            4 => '19-02-2017', 5 => '20-02-2017', 6 => '21-02-2017', 7 => '22-02-2017',
            8 => '23-02-2017', 9 => '24-02-2017', 10 => '25-02-2017', 11 => '26-02-2017',
            12 => '27-02-2017', )
    
    2

    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    8
    Computer
    array ( 0 => '2017-02-15', 1 => '2017-02-16', 2 => '2017-02-17', 3 => '2017-02-18',
            4 => '2017-02-19', 5 => '2017-02-20', 6 => '2017-02-21', 7 => '2017-02-22',
            8 => '2017-02-23', 9 => '2017-02-24', 10 => '2017-02-25', 11 => '2017-02-26',
            12 => '2017-02-27', )
    
    American
    array ( 0 => '02/15/2017', 1 => '02/16/2017', 2 => '02/17/2017', 3 => '02/18/2017',
            4 => '02/19/2017', 5 => '02/20/2017', 6 => '02/21/2017', 7 => '02/22/2017',
            8 => '02/23/2017', 9 => '02/24/2017', 10 => '02/25/2017', 11 => '02/26/2017',
            12 => '02/27/2017', )
    
    Non-American
    array ( 0 => '15-02-2017', 1 => '16-02-2017', 2 => '17-02-2017', 3 => '18-02-2017',
            4 => '19-02-2017', 5 => '20-02-2017', 6 => '21-02-2017', 7 => '22-02-2017',
            8 => '23-02-2017', 9 => '24-02-2017', 10 => '25-02-2017', 11 => '26-02-2017',
            12 => '27-02-2017', )
    
    4
    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    5
    Computer
    array ( 0 => '2017-02-15', 1 => '2017-02-16', 2 => '2017-02-17', 3 => '2017-02-18',
            4 => '2017-02-19', 5 => '2017-02-20', 6 => '2017-02-21', 7 => '2017-02-22',
            8 => '2017-02-23', 9 => '2017-02-24', 10 => '2017-02-25', 11 => '2017-02-26',
            12 => '2017-02-27', )
    
    American
    array ( 0 => '02/15/2017', 1 => '02/16/2017', 2 => '02/17/2017', 3 => '02/18/2017',
            4 => '02/19/2017', 5 => '02/20/2017', 6 => '02/21/2017', 7 => '02/22/2017',
            8 => '02/23/2017', 9 => '02/24/2017', 10 => '02/25/2017', 11 => '02/26/2017',
            12 => '02/27/2017', )
    
    Non-American
    array ( 0 => '15-02-2017', 1 => '16-02-2017', 2 => '17-02-2017', 3 => '18-02-2017',
            4 => '19-02-2017', 5 => '20-02-2017', 6 => '21-02-2017', 7 => '22-02-2017',
            8 => '23-02-2017', 9 => '24-02-2017', 10 => '25-02-2017', 11 => '26-02-2017',
            12 => '27-02-2017', )
    
    6
    Computer
    array ( 0 => '2017-02-15', 1 => '2017-02-16', 2 => '2017-02-17', 3 => '2017-02-18',
            4 => '2017-02-19', 5 => '2017-02-20', 6 => '2017-02-21', 7 => '2017-02-22',
            8 => '2017-02-23', 9 => '2017-02-24', 10 => '2017-02-25', 11 => '2017-02-26',
            12 => '2017-02-27', )
    
    American
    array ( 0 => '02/15/2017', 1 => '02/16/2017', 2 => '02/17/2017', 3 => '02/18/2017',
            4 => '02/19/2017', 5 => '02/20/2017', 6 => '02/21/2017', 7 => '02/22/2017',
            8 => '02/23/2017', 9 => '02/24/2017', 10 => '02/25/2017', 11 => '02/26/2017',
            12 => '02/27/2017', )
    
    Non-American
    array ( 0 => '15-02-2017', 1 => '16-02-2017', 2 => '17-02-2017', 3 => '18-02-2017',
            4 => '19-02-2017', 5 => '20-02-2017', 6 => '21-02-2017', 7 => '22-02-2017',
            8 => '23-02-2017', 9 => '24-02-2017', 10 => '25-02-2017', 11 => '26-02-2017',
            12 => '27-02-2017', )
    
    7
    Computer
    array ( 0 => '2017-02-15', 1 => '2017-02-16', 2 => '2017-02-17', 3 => '2017-02-18',
            4 => '2017-02-19', 5 => '2017-02-20', 6 => '2017-02-21', 7 => '2017-02-22',
            8 => '2017-02-23', 9 => '2017-02-24', 10 => '2017-02-25', 11 => '2017-02-26',
            12 => '2017-02-27', )
    
    American
    array ( 0 => '02/15/2017', 1 => '02/16/2017', 2 => '02/17/2017', 3 => '02/18/2017',
            4 => '02/19/2017', 5 => '02/20/2017', 6 => '02/21/2017', 7 => '02/22/2017',
            8 => '02/23/2017', 9 => '02/24/2017', 10 => '02/25/2017', 11 => '02/26/2017',
            12 => '02/27/2017', )
    
    Non-American
    array ( 0 => '15-02-2017', 1 => '16-02-2017', 2 => '17-02-2017', 3 => '18-02-2017',
            4 => '19-02-2017', 5 => '20-02-2017', 6 => '21-02-2017', 7 => '22-02-2017',
            8 => '23-02-2017', 9 => '24-02-2017', 10 => '25-02-2017', 11 => '26-02-2017',
            12 => '27-02-2017', )
    
    8
    Computer
    array ( 0 => '2017-02-15', 1 => '2017-02-16', 2 => '2017-02-17', 3 => '2017-02-18',
            4 => '2017-02-19', 5 => '2017-02-20', 6 => '2017-02-21', 7 => '2017-02-22',
            8 => '2017-02-23', 9 => '2017-02-24', 10 => '2017-02-25', 11 => '2017-02-26',
            12 => '2017-02-27', )
    
    American
    array ( 0 => '02/15/2017', 1 => '02/16/2017', 2 => '02/17/2017', 3 => '02/18/2017',
            4 => '02/19/2017', 5 => '02/20/2017', 6 => '02/21/2017', 7 => '02/22/2017',
            8 => '02/23/2017', 9 => '02/24/2017', 10 => '02/25/2017', 11 => '02/26/2017',
            12 => '02/27/2017', )
    
    Non-American
    array ( 0 => '15-02-2017', 1 => '16-02-2017', 2 => '17-02-2017', 3 => '18-02-2017',
            4 => '19-02-2017', 5 => '20-02-2017', 6 => '21-02-2017', 7 => '22-02-2017',
            8 => '23-02-2017', 9 => '24-02-2017', 10 => '25-02-2017', 11 => '26-02-2017',
            12 => '27-02-2017', )
    
    9

    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    8
    array(5) {
      [0]=>
      string(10) "2010-10-01"
      [1]=>
      string(10) "2010-10-02"
      [2]=>
      string(10) "2010-10-03"
      [3]=>
      string(10) "2010-10-04"
      [4]=>
      string(10) "2010-10-05"
    }
    
    1
    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    5
    Computer
    array ( 0 => '2017-02-15', 1 => '2017-02-16', 2 => '2017-02-17', 3 => '2017-02-18',
            4 => '2017-02-19', 5 => '2017-02-20', 6 => '2017-02-21', 7 => '2017-02-22',
            8 => '2017-02-23', 9 => '2017-02-24', 10 => '2017-02-25', 11 => '2017-02-26',
            12 => '2017-02-27', )
    
    American
    array ( 0 => '02/15/2017', 1 => '02/16/2017', 2 => '02/17/2017', 3 => '02/18/2017',
            4 => '02/19/2017', 5 => '02/20/2017', 6 => '02/21/2017', 7 => '02/22/2017',
            8 => '02/23/2017', 9 => '02/24/2017', 10 => '02/25/2017', 11 => '02/26/2017',
            12 => '02/27/2017', )
    
    Non-American
    array ( 0 => '15-02-2017', 1 => '16-02-2017', 2 => '17-02-2017', 3 => '18-02-2017',
            4 => '19-02-2017', 5 => '20-02-2017', 6 => '21-02-2017', 7 => '22-02-2017',
            8 => '23-02-2017', 9 => '24-02-2017', 10 => '25-02-2017', 11 => '26-02-2017',
            12 => '27-02-2017', )
    
    6
    array(5) {
      [0]=>
      string(10) "2010-10-01"
      [1]=>
      string(10) "2010-10-02"
      [2]=>
      string(10) "2010-10-03"
      [3]=>
      string(10) "2010-10-04"
      [4]=>
      string(10) "2010-10-05"
    }
    
    4
    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    2222

    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    8
    array(5) {
      [0]=>
      string(10) "2010-10-01"
      [1]=>
      string(10) "2010-10-02"
      [2]=>
      string(10) "2010-10-03"
      [3]=>
      string(10) "2010-10-04"
      [4]=>
      string(10) "2010-10-05"
    }
    
    1
    array(5) {
      [0]=>
      string(10) "2010-10-01"
      [1]=>
      string(10) "2010-10-02"
      [2]=>
      string(10) "2010-10-03"
      [3]=>
      string(10) "2010-10-04"
      [4]=>
      string(10) "2010-10-05"
    }
    
    9
    Computer
    array ( 0 => '2017-02-15', 1 => '2017-02-16', 2 => '2017-02-17', 3 => '2017-02-18',
            4 => '2017-02-19', 5 => '2017-02-20', 6 => '2017-02-21', 7 => '2017-02-22',
            8 => '2017-02-23', 9 => '2017-02-24', 10 => '2017-02-25', 11 => '2017-02-26',
            12 => '2017-02-27', )
    
    American
    array ( 0 => '02/15/2017', 1 => '02/16/2017', 2 => '02/17/2017', 3 => '02/18/2017',
            4 => '02/19/2017', 5 => '02/20/2017', 6 => '02/21/2017', 7 => '02/22/2017',
            8 => '02/23/2017', 9 => '02/24/2017', 10 => '02/25/2017', 11 => '02/26/2017',
            12 => '02/27/2017', )
    
    Non-American
    array ( 0 => '15-02-2017', 1 => '16-02-2017', 2 => '17-02-2017', 3 => '18-02-2017',
            4 => '19-02-2017', 5 => '20-02-2017', 6 => '21-02-2017', 7 => '22-02-2017',
            8 => '23-02-2017', 9 => '24-02-2017', 10 => '25-02-2017', 11 => '26-02-2017',
            12 => '27-02-2017', )
    
    4
    Computer
    array ( 0 => '2017-02-15', 1 => '2017-02-16', 2 => '2017-02-17', 3 => '2017-02-18',
            4 => '2017-02-19', 5 => '2017-02-20', 6 => '2017-02-21', 7 => '2017-02-22',
            8 => '2017-02-23', 9 => '2017-02-24', 10 => '2017-02-25', 11 => '2017-02-26',
            12 => '2017-02-27', )
    
    American
    array ( 0 => '02/15/2017', 1 => '02/16/2017', 2 => '02/17/2017', 3 => '02/18/2017',
            4 => '02/19/2017', 5 => '02/20/2017', 6 => '02/21/2017', 7 => '02/22/2017',
            8 => '02/23/2017', 9 => '02/24/2017', 10 => '02/25/2017', 11 => '02/26/2017',
            12 => '02/27/2017', )
    
    Non-American
    array ( 0 => '15-02-2017', 1 => '16-02-2017', 2 => '17-02-2017', 3 => '18-02-2017',
            4 => '19-02-2017', 5 => '20-02-2017', 6 => '21-02-2017', 7 => '22-02-2017',
            8 => '23-02-2017', 9 => '24-02-2017', 10 => '25-02-2017', 11 => '26-02-2017',
            12 => '27-02-2017', )
    
    9

    date()2

    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    9date()4
    function getDatesFromRange($a,$b,$x=0,$dates=[]){
        while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
        return $dates;
    }
    var_export(getDatesFromRange('2010-10-05','2010-10-01'));
    
    0date()6
    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    4date()8

    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    8strtotime()0

    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    8
    Array
    (
        [0] => 2010-10-01
        [1] => 2010-10-02
        [2] => 2010-10-03
        [3] => 2010-10-04
        [4] => 2010-10-05
    )
    
    3
    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    5
    Computer
    array ( 0 => '2017-02-15', 1 => '2017-02-16', 2 => '2017-02-17', 3 => '2017-02-18',
            4 => '2017-02-19', 5 => '2017-02-20', 6 => '2017-02-21', 7 => '2017-02-22',
            8 => '2017-02-23', 9 => '2017-02-24', 10 => '2017-02-25', 11 => '2017-02-26',
            12 => '2017-02-27', )
    
    American
    array ( 0 => '02/15/2017', 1 => '02/16/2017', 2 => '02/17/2017', 3 => '02/18/2017',
            4 => '02/19/2017', 5 => '02/20/2017', 6 => '02/21/2017', 7 => '02/22/2017',
            8 => '02/23/2017', 9 => '02/24/2017', 10 => '02/25/2017', 11 => '02/26/2017',
            12 => '02/27/2017', )
    
    Non-American
    array ( 0 => '15-02-2017', 1 => '16-02-2017', 2 => '17-02-2017', 3 => '18-02-2017',
            4 => '19-02-2017', 5 => '20-02-2017', 6 => '21-02-2017', 7 => '22-02-2017',
            8 => '23-02-2017', 9 => '24-02-2017', 10 => '25-02-2017', 11 => '26-02-2017',
            12 => '27-02-2017', )
    
    6
    Array
    (
        [0] => 2010-10-01
        [1] => 2010-10-02
        [2] => 2010-10-03
        [3] => 2010-10-04
        [4] => 2010-10-05
    )
    
    6
    Computer
    array ( 0 => '2017-02-15', 1 => '2017-02-16', 2 => '2017-02-17', 3 => '2017-02-18',
            4 => '2017-02-19', 5 => '2017-02-20', 6 => '2017-02-21', 7 => '2017-02-22',
            8 => '2017-02-23', 9 => '2017-02-24', 10 => '2017-02-25', 11 => '2017-02-26',
            12 => '2017-02-27', )
    
    American
    array ( 0 => '02/15/2017', 1 => '02/16/2017', 2 => '02/17/2017', 3 => '02/18/2017',
            4 => '02/19/2017', 5 => '02/20/2017', 6 => '02/21/2017', 7 => '02/22/2017',
            8 => '02/23/2017', 9 => '02/24/2017', 10 => '02/25/2017', 11 => '02/26/2017',
            12 => '02/27/2017', )
    
    Non-American
    array ( 0 => '15-02-2017', 1 => '16-02-2017', 2 => '17-02-2017', 3 => '18-02-2017',
            4 => '19-02-2017', 5 => '20-02-2017', 6 => '21-02-2017', 7 => '22-02-2017',
            8 => '23-02-2017', 9 => '24-02-2017', 10 => '25-02-2017', 11 => '26-02-2017',
            12 => '27-02-2017', )
    
    6
    array(5) {
      [0]=>
      string(10) "2010-10-01"
      [1]=>
      string(10) "2010-10-02"
      [2]=>
      string(10) "2010-10-03"
      [3]=>
      string(10) "2010-10-04"
      [4]=>
      string(10) "2010-10-05"
    }
    
    4__

    strtotime()0

    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    8array_push()6array_push()7
    Array
    (
        [0] => 2010-10-01
        [1] => 2010-10-02
        [2] => 2010-10-03
        [3] => 2010-10-04
        [4] => 2010-10-05
    )
    
    3 array_push()9
    function getDatesFromRange($a,$b,$x=0,$dates=[]){
        while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
        return $dates;
    }
    var_export(getDatesFromRange('2010-10-05','2010-10-01'));
    
    0date()1

    $x2strtotime()6

    Computer
    array ( 0 => '2017-02-15', 1 => '2017-02-16', 2 => '2017-02-17', 3 => '2017-02-18',
            4 => '2017-02-19', 5 => '2017-02-20', 6 => '2017-02-21', 7 => '2017-02-22',
            8 => '2017-02-23', 9 => '2017-02-24', 10 => '2017-02-25', 11 => '2017-02-26',
            12 => '2017-02-27', )
    
    American
    array ( 0 => '02/15/2017', 1 => '02/16/2017', 2 => '02/17/2017', 3 => '02/18/2017',
            4 => '02/19/2017', 5 => '02/20/2017', 6 => '02/21/2017', 7 => '02/22/2017',
            8 => '02/23/2017', 9 => '02/24/2017', 10 => '02/25/2017', 11 => '02/26/2017',
            12 => '02/27/2017', )
    
    Non-American
    array ( 0 => '15-02-2017', 1 => '16-02-2017', 2 => '17-02-2017', 3 => '18-02-2017',
            4 => '19-02-2017', 5 => '20-02-2017', 6 => '21-02-2017', 7 => '22-02-2017',
            8 => '23-02-2017', 9 => '24-02-2017', 10 => '25-02-2017', 11 => '26-02-2017',
            12 => '27-02-2017', )
    
    9

    $x5

    Output:

    array(5) {
      [0]=>
      string(10) "2010-10-01"
      [1]=>
      string(10) "2010-10-02"
      [2]=>
      string(10) "2010-10-03"
      [3]=>
      string(10) "2010-10-04"
      [4]=>
      string(10) "2010-10-05"
    }
    

    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    8strtotime()2
    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    9strtotime()4
    This example use strtotime() function which is used to convert an English textual date-time description to a UNIX timestamp. It returns a timestamp on success, False otherwise.

    function getDatesFromRange($a,$b,$x=0,$dates=[]){
        while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
        return $dates;
    }
    var_export(getDatesFromRange('2010-10-05','2010-10-01'));
    
    7

    strtotime()6 strtotime()7strtotime()8

    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    1$x0
    Computer
    array ( 0 => '2017-02-15', 1 => '2017-02-16', 2 => '2017-02-17', 3 => '2017-02-18',
            4 => '2017-02-19', 5 => '2017-02-20', 6 => '2017-02-21', 7 => '2017-02-22',
            8 => '2017-02-23', 9 => '2017-02-24', 10 => '2017-02-25', 11 => '2017-02-26',
            12 => '2017-02-27', )
    
    American
    array ( 0 => '02/15/2017', 1 => '02/16/2017', 2 => '02/17/2017', 3 => '02/18/2017',
            4 => '02/19/2017', 5 => '02/20/2017', 6 => '02/21/2017', 7 => '02/22/2017',
            8 => '02/23/2017', 9 => '02/24/2017', 10 => '02/25/2017', 11 => '02/26/2017',
            12 => '02/27/2017', )
    
    Non-American
    array ( 0 => '15-02-2017', 1 => '16-02-2017', 2 => '17-02-2017', 3 => '18-02-2017',
            4 => '19-02-2017', 5 => '20-02-2017', 6 => '21-02-2017', 7 => '22-02-2017',
            8 => '23-02-2017', 9 => '24-02-2017', 10 => '25-02-2017', 11 => '26-02-2017',
            12 => '27-02-2017', )
    
    9

    Ví dụ 2: Ví dụ này sử dụng hàm strtotime () được sử dụng để chuyển đổi mô tả thời gian ngày của tiếng Anh thành dấu thời gian UNIX. Nó trả lại một dấu thời gian về thành công, sai nếu không.

    $x7

    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    5$x9strtotime()4

    function getDatesFromRange($a,$b,$x=0,$dates=[]){
        while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
        return $dates;
    }
    var_export(getDatesFromRange('2010-10-05','2010-10-01'));
    
    01
    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    5
    function getDatesFromRange($a,$b,$x=0,$dates=[]){
        while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
        return $dates;
    }
    var_export(getDatesFromRange('2010-10-05','2010-10-01'));
    
    03strtotime()4

    function getDatesFromRange($a,$b,$x=0,$dates=[]){
        while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
        return $dates;
    }
    var_export(getDatesFromRange('2010-10-05','2010-10-01'));
    
    15
    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    5
    function getDatesFromRange($a,$b,$x=0,$dates=[]){
        while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
        return $dates;
    }
    var_export(getDatesFromRange('2010-10-05','2010-10-01'));
    
    6array_push()7
    function getDatesFromRange($a,$b,$x=0,$dates=[]){
        while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
        return $dates;
    }
    var_export(getDatesFromRange('2010-10-05','2010-10-01'));
    
    01
    Computer
    array ( 0 => '2017-02-15', 1 => '2017-02-16', 2 => '2017-02-17', 3 => '2017-02-18',
            4 => '2017-02-19', 5 => '2017-02-20', 6 => '2017-02-21', 7 => '2017-02-22',
            8 => '2017-02-23', 9 => '2017-02-24', 10 => '2017-02-25', 11 => '2017-02-26',
            12 => '2017-02-27', )
    
    American
    array ( 0 => '02/15/2017', 1 => '02/16/2017', 2 => '02/17/2017', 3 => '02/18/2017',
            4 => '02/19/2017', 5 => '02/20/2017', 6 => '02/21/2017', 7 => '02/22/2017',
            8 => '02/23/2017', 9 => '02/24/2017', 10 => '02/25/2017', 11 => '02/26/2017',
            12 => '02/27/2017', )
    
    Non-American
    array ( 0 => '15-02-2017', 1 => '16-02-2017', 2 => '17-02-2017', 3 => '18-02-2017',
            4 => '19-02-2017', 5 => '20-02-2017', 6 => '21-02-2017', 7 => '22-02-2017',
            8 => '23-02-2017', 9 => '24-02-2017', 10 => '25-02-2017', 11 => '26-02-2017',
            12 => '27-02-2017', )
    
    9

    function getDatesFromRange($a,$b,$x=0,$dates=[]){
        while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
        return $dates;
    }
    var_export(getDatesFromRange('2010-10-05','2010-10-01'));
    
    21 array_push()7______123

    function getDatesFromRange($a,$b,$x=0,$dates=[]){
        while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
        return $dates;
    }
    var_export(getDatesFromRange('2010-10-05','2010-10-01'));
    
    31
    function getDatesFromRange($a,$b,$x=0,$dates=[]){
        while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
        return $dates;
    }
    var_export(getDatesFromRange('2010-10-05','2010-10-01'));
    
    23
    function getDatesFromRange($a,$b,$x=0,$dates=[]){
        while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
        return $dates;
    }
    var_export(getDatesFromRange('2010-10-05','2010-10-01'));
    
    33

    function getDatesFromRange($a,$b,$x=0,$dates=[]){
        while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
        return $dates;
    }
    var_export(getDatesFromRange('2010-10-05','2010-10-01'));
    
    34
    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    5
    function getDatesFromRange($a,$b,$x=0,$dates=[]){
        while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
        return $dates;
    }
    var_export(getDatesFromRange('2010-10-05','2010-10-01'));
    
    36array_push()7
    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    6
    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    1
    function getDatesFromRange($a,$b,$x=0,$dates=[]){
        while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
        return $dates;
    }
    var_export(getDatesFromRange('2010-10-05','2010-10-01'));
    
    23
    Computer
    array ( 0 => '2017-02-15', 1 => '2017-02-16', 2 => '2017-02-17', 3 => '2017-02-18',
            4 => '2017-02-19', 5 => '2017-02-20', 6 => '2017-02-21', 7 => '2017-02-22',
            8 => '2017-02-23', 9 => '2017-02-24', 10 => '2017-02-25', 11 => '2017-02-26',
            12 => '2017-02-27', )
    
    American
    array ( 0 => '02/15/2017', 1 => '02/16/2017', 2 => '02/17/2017', 3 => '02/18/2017',
            4 => '02/19/2017', 5 => '02/20/2017', 6 => '02/21/2017', 7 => '02/22/2017',
            8 => '02/23/2017', 9 => '02/24/2017', 10 => '02/25/2017', 11 => '02/26/2017',
            12 => '02/27/2017', )
    
    Non-American
    array ( 0 => '15-02-2017', 1 => '16-02-2017', 2 => '17-02-2017', 3 => '18-02-2017',
            4 => '19-02-2017', 5 => '20-02-2017', 6 => '21-02-2017', 7 => '22-02-2017',
            8 => '23-02-2017', 9 => '24-02-2017', 10 => '25-02-2017', 11 => '26-02-2017',
            12 => '27-02-2017', )
    
    9

    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    9date()4
    function getDatesFromRange($a,$b,$x=0,$dates=[]){
        while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
        return $dates;
    }
    var_export(getDatesFromRange('2010-10-05','2010-10-01'));
    
    34strtotime()4

    strtotime()0

    function getDatesFromRange($a,$b,$x=0,$dates=[]){
        while(end($dates)!=$b && $x=-array_push($dates,date("Y-m-d",strtotime("$a +$x day"))));
        return $dates;
    }
    var_export(getDatesFromRange('2010-10-05','2010-10-01'));
    
    47
    function getDatesFromRange($a,$b,$format='Y-m-d',$dates=[],$x=0){
        while(date($format,strtotime(end($dates)))!=date($format,strtotime($b)) && $x=array_push($dates,date($format,strtotime("$a +$x day"))));
        return $dates;
    }
    
    $formats=array("Computer"=>'Y-m-d',"American"=>'m/d/Y','Non-American'=>'d-m-Y');
    $start='15-02-2017';    // Non-American formatted start date
    $end='2017-02-27';  // Computer formatted start date
    foreach($formats as $label=>$format){
        echo "
    $label
    "; var_export(getDatesFromRange($start,$end,$format)); echo "
    "; }
    9
    Computer
    array ( 0 => '2017-02-15', 1 => '2017-02-16', 2 => '2017-02-17', 3 => '2017-02-18',
            4 => '2017-02-19', 5 => '2017-02-20', 6 => '2017-02-21', 7 => '2017-02-22',
            8 => '2017-02-23', 9 => '2017-02-24', 10 => '2017-02-25', 11 => '2017-02-26',
            12 => '2017-02-27', )
    
    American
    array ( 0 => '02/15/2017', 1 => '02/16/2017', 2 => '02/17/2017', 3 => '02/18/2017',
            4 => '02/19/2017', 5 => '02/20/2017', 6 => '02/21/2017', 7 => '02/22/2017',
            8 => '02/23/2017', 9 => '02/24/2017', 10 => '02/25/2017', 11 => '02/26/2017',
            12 => '02/27/2017', )
    
    Non-American
    array ( 0 => '15-02-2017', 1 => '16-02-2017', 2 => '17-02-2017', 3 => '18-02-2017',
            4 => '19-02-2017', 5 => '20-02-2017', 6 => '21-02-2017', 7 => '22-02-2017',
            8 => '23-02-2017', 9 => '24-02-2017', 10 => '25-02-2017', 11 => '26-02-2017',
            12 => '27-02-2017', )
    
    9

    $x5

    Output:

    Array
    (
        [0] => 2010-10-01
        [1] => 2010-10-02
        [2] => 2010-10-03
        [3] => 2010-10-04
        [4] => 2010-10-05
    )
    


    Làm thế nào tôi có thể nhận được ngày giữa hai ngày trong PHP?

    Hàm date_diff () là một hàm sẵn có trong PHP được sử dụng để tính toán chênh lệch giữa hai ngày.Hàm này trả về một đối tượng DateInterval về thành công và trả về sai khi thất bại.date_diff() function is an inbuilt function in PHP that is used to calculate the difference between two dates. This function returns a DateInterval object on the success and returns FALSE on failure.

    Làm thế nào để tôi tìm thấy ngày giữa hai ngày?

    Để tính thời gian giữa hai ngày và thời gian, bạn chỉ có thể trừ đi cái này với cái kia.subtract one from the other.

    Làm cách nào để tính số tuần giữa hai ngày trong PHP?

    Hàm php tuần_between_two_dates ($ date1, $ date2) {$ first = datetime :: createFromFormat ('m/d/y', $ date1);$ Thứ hai = DateTime :: createdFromFormat ('m/d/y', $ date2);if ($ date1> $ date2) return week_between_two_dates ($ date2, $ date1);Tầng trả lại ($ đầu tiên-> diff ($ giây)-> ngày/7);} $ dt1 = '1/1/2014';$ dt2 = '12/31/2014 ';...

    Làm thế nào tôi có thể tính giờ giữa hai ngày trong PHP?

    $ hourDiff = vòng ((strtotime ($ time1) - strtotime ($ time2))/3600, 1);