Php 拉维公司;碳循环数据范围

Php 拉维公司;碳循环数据范围,php,laravel,php-carbon,Php,Laravel,Php Carbon,我想用碳元素列出两个日期之间的一天。 代码如下: @foreach ($rooms as $room) <div class="col-sm-4"> <div class="card"> <img class="card-img-top" data-src="holder.js/100px180"> <div class="card-block"> <h4

我想用碳元素列出两个日期之间的一天。 代码如下:

 @foreach ($rooms as $room)
  <div class="col-sm-4">
        <div class="card">
          <img class="card-img-top" data-src="holder.js/100px180">
          <div class="card-block">
            <h4 class="card-title">{{$room->type}}</h4>
            <p class="card-text">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ipsum reiciendis facere repellat soluta obcaecati laborum ex perspiciatis, iusto.</p>
          </div>
          <ul class="list-group list-group-flush">
            <li class="list-group-item">
                <ul>
                    //////HERE THE PART TO LIST EACH DAY//////
                    @for($d = 0; $d < $checkin->diffInDays($checkout); $d++)
                     <li>{{$checkin->addDay()->toDateString()}}</li>
                    @endfor
                   //////////////////////////////////////////////

                </ul>
            </li>
          </ul>
          <div class="card-block">
             <button type="submit" class="btn btn-primary btn-lg btn-block" name="room_id" value="{{ $room->id }}">Book</button>
          </div>
        </div>
    </div>
    @endforeach
@foreach($room作为$room)
{{$room->type}

Lorem ipsum door sit amet,Concetetur Adipising Elite。易卜拉欣,易卜拉欣,易卜拉欣,易卜拉欣,易卜拉欣,易卜拉欣,易卜拉欣,易卜拉欣,易卜拉欣,易卜拉欣,易卜拉欣,易卜拉欣,易卜拉欣,易卜拉欣,易卜拉欣

    • //////这里是每天要列出的部分////// @对于($d=0;$d<$checkin->diffInDays($checkout);$d++)
    • {{$checkin->addDay()->toDateString()}
    • @结束 //////////////////////////////////////////////
书 @endforeach
下面是发生的情况(在本测试中,$checkin=2015-12-16和$checkout=2015-12-19):

很明显,每张卡都应该有一个列表,其中包括:

  • 2015-12-16
  • 2015-12-17
  • 2015-12-18
我知道我可以使用php类(比如DatePeriod、DateInterval、ecc…),但我想找到一个使用Carbon的好解决方案


进行一些测试,就像碳保存了日期的更改。

您可以尝试
克隆
$checkin
对象,如下所示:

<?php $date = clone $checkin; ?>

@while ($date->diffInDays($checkout))
    <li>{{$date->toDateString()}}</li>

    <?php $date->addDay(); ?>
@endwhile

@而($date->diffInDays($checkout))
  • {{$date->toDateString()}
  • @结束时
    或者更好:

    @for ($date=clone$checkin; $date->diffInDays($checkout)>0; $date->addDay())
        <li>{{$date->toDateString()}}</li>
    @endfor
    
    @for($date=clone$checkin;$date->diffInDays($checkout)>0;$date->addDay()
    
  • {{$date->toDateString()}
  • @结束
    您可以尝试
    克隆
    $checkin
    对象,如下所示:

    <?php $date = clone $checkin; ?>
    
    @while ($date->diffInDays($checkout))
        <li>{{$date->toDateString()}}</li>
    
        <?php $date->addDay(); ?>
    @endwhile
    
    
    @而($date->diffInDays($checkout))
    
  • {{$date->toDateString()}
  • @结束时
    或者更好:

    @for ($date=clone$checkin; $date->diffInDays($checkout)>0; $date->addDay())
        <li>{{$date->toDateString()}}</li>
    @endfor
    
    @for($date=clone$checkin;$date->diffInDays($checkout)>0;$date->addDay()
    
  • {{$date->toDateString()}
  • @结束
    正如我所写,如果您添加一些数据,碳似乎会覆盖日期。因此,循环结束时,日期从上次添加开始。谢谢。现在可以了。诀窍是克隆变量?你能给我解释一下吗?是的,诀窍是
    clone
    关键字。你可以阅读有关它的详细信息。正如我所写的,如果你添加一些数据,碳似乎会覆盖日期。因此,循环结束时,日期从上次添加开始。谢谢。现在可以了。诀窍是克隆变量?你能给我解释一下吗?是的,诀窍是
    clone
    关键字。你可以阅读这本书来了解它的细节。