首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >laravel : php和date (view.blade.php)

laravel : php和date (view.blade.php)
EN

Stack Overflow用户
提问于 2016-09-07 21:19:04
回答 1查看 1.1K关注 0票数 0

我试图显示的一天,时间和状态的商店,如果他们是开放的或没有。我想显示当前的日期、时间和状态作为下拉框的标题,当用户单击该框时,他们看到的是一周中的其他日子、时间和状态。我在下拉框中的数据运行良好,但是头文件不能正常工作。请看屏幕截图

我想要日,时间和状态作为一个标题,在下拉框标题和表中,我想显示其余的日子。(蓝色按钮还不是下拉按钮,因为它是一个<button>并折叠)。所以我也想用一个下拉框来代替这个按钮。谢谢你的时间和建议。

代码语言:javascript
复制
    <button class="btn btn-primary" type="button" data-toggle="collapse" data-target="#collapseExample" aria-expanded="false" aria-controls="collapseExample"> Timings </button>
<div class="collapse" id="collapseExample">
<div class="well">

<?php

  date_default_timezone_set('Australia/Melbourne');
  $datetime = new \DateTime();

  $listItem = array('<li class="active">', '</li>');

 $curDay = date('l');

  $status = array( "Now Open" ,"Closed",  "Opening Soon",  "Closing Soon", "Open 24 hours", "  ");

  $times = $times = array(
    1 => array('day' => 'Monday', 'open' => date( $row_DetailRS1['monO'] ), 'close' => date( $row_DetailRS1['monC'] )),
    2 => array('day' => 'Tuesday', 'open' => date( $row_DetailRS1['tueO'] ), 'close' => date( $row_DetailRS1['tueC'] )),
    3 => array('day' => 'Wednesday', 'open' => date( $row_DetailRS1['wedO'] ), 'close' => date( $row_DetailRS1['wedC']) ),
    4 => array('day' => 'Thursday', 'open' => date( $row_DetailRS1['thurO'] ), 'close' => date( $row_DetailRS1['thurC']) ),
    5 => array('day' => 'Friday', 'open' => date( $row_DetailRS1['friO'] ), 'close' => date( $row_DetailRS1['friC'] )),
    6 => array('day' => 'Saturday', 'open' => date( $row_DetailRS1['satO'] ), 'close' => date( $row_DetailRS1['satC']) ),
    7 => array('day' => 'Sunday', 'open' => date( $row_DetailRS1['sunO'] ), 'close' => date( $row_DetailRS1['sunC'] )) );



  $html .= "  <a href=''>"; echo $curDay; $html .="</a>

               <table class='table table-striped'  border='0' align='center' cellpadding='10' cellspacing='20'>
               <tr>
                 <td>Days</td>
                 <td><span class='white-text' style='margin-right: 3em;'></td> 
                 <td>Business Hours</td> 
                 <td><span class='white-text' style='margin-right: 3em;'></td>
                 <td>Hours</td>
                </tr>";
  $i = 1;



$cd = $datetime->format('N'); 

$timenow =     date("H:i:s", time());


// Create an array of day numbers that start with current day and loops around
$day_order = range($cd, 7);
if ($cd != 1) {
    $day_order = array_merge($day_order, range(1, $cd-1));
}



 foreach ($day_order as $daynum): {
    $oc = $times[$daynum];
    $openingTime = $oc['open'];
    $closingTime = $oc['close'];
    $openingSoon = date('H:i:sA', strtotime($openingTime)-3600);
    $closingSoon = date('H:i:sA', strtotime($closingTime)-3600);
    if ($cd == $daynum) {
        if ($openingTime == ' ' && $closingTime == ' ') {
            $s = $status[4];
        }
        elseif ($timenow < $openingSoon || $timenow > $closingTime ) {
            $s = $status[1];
        }
        elseif  ($timenow > $openingSoon && $timenow < $openingTime ) {
            $s = $status[2];
        }
        elseif  ($timenow > $closingSoon && $timenow < $closingTime ) {
            $s = $status[3];
        } else {
            $s = $status[0];
        }
    } else {
        $s = " ";
    }

    $html .= "<tr>";
    $html .= "<td>". $oc['day']."</td>";
    $html .= "<td>  <span class='white-text' style='margin-right: 3em;'> </td>";
    $html .= "<td>".$openingTime." to ".$closingTime."</td>";
    $html .= "<td>  <span class='white-text' style='margin-right: 3em;'> </td>";
    $html .= "<td>".$s."</td>";
    $html .= "</tr>";

}
      $datetime->add(new \DateInterval('P1D'));








  endforeach;
  $html .= "</table>";
  echo $html;



 ?>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-08 03:32:44

首先,您应该从视图中删除逻辑,在视图中混合逻辑是一种非常糟糕的做法,顺便说一句,它会导致这种问题,并使文件无法读取并难以维护。

您应该在控制器或其他文件中组装数据数组或列表,并使用控制器将数据发送到视图,视图只应集中于显示该数据。

你的问题是标签,你有一个真正混乱的标签,这就是所有的问题。

例如,您有打开但从不关闭的span标记。

我建议您删除逻辑,完全删除<?php ... ?>标记并清理视图。在那之后你会看到一切都很清楚。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39379154

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档