簡體   English   中英

我如何使用PHP從現在開始回響這么多的日期?

[英]How can I echo a date so many days from now using PHP?

我正在制作一個腳本,它將允許管理員禁止IP。 我目前正在實施禁令長度系統,但是我試圖在每個選擇選項旁邊回顯取消日期。

這是我用於下拉選擇的HTML:

             <strong>Select Ban Length</strong>
       <div class="select-style">
  <select>
    <optgroup label="Temporary Ban Options">
    <option value="1">1 Day</option>
    <option value="3">3 Days</option>
    <option value="7">7 Days</option>
    <option value="14">14 Days</option>
    </optgroup>
    <optgroup label="Permanent Ban Options">
      <option value="PERMANENT">Permanent - Never Lift Ban</option>
    </optgroup>
  </select>
</div>

我要問的是如何在每個項目旁邊回顯升降機日期? 例如:

在此處輸入圖片說明

我已經開始<?php echo date('Ymd H:i:s'); ?> <?php echo date('Ymd H:i:s'); ?>獲取當前日期,但是如上圖所示,在升降機日期在禁令長度旁邊的情況下,如何實現類似的效果?

您可以使用strtotime的自動+ n days功能,使用此日期字符串mdY H:i A給出示例圖像中的要求。

<strong>Select Ban Length</strong>
<div class="select-style">
  <select>
    <optgroup label="Temporary Ban Options">
    <?php
    foreach (array(1, 3, 7, 14) as $d){
        // setting $date and $text separately just for readability here
        $text = $d . ' Day' . ($d===1? '': 's');
        $date = date('m-d-Y H:i A', strtotime('+ ' . $d .' days'));
        echo '<option value="'.$d.'">' . $text . ' (' . $date . ')</option>';
    }
    ?>
    </optgroup>
    <optgroup label="Permanent Ban Options">
      <option value="PERMANENT">Permanent - Never Lift Ban</option>
    </optgroup>
  </select>
</div>

這是您的處理方式:

  <select>
    <optgroup label="Temporary Ban Options">
    <option value="1">1 Day (<?= date('Y-m-d H:i:s', strtotime("+1 day")) ?>)</option>
    <option value="3">3 Days (<?= date('Y-m-d H:i:s', strtotime("+3 days")) ?>)</option>
    <option value="7">7 Days (<?= date('Y-m-d H:i:s', strtotime("+7 days")) ?>)</option>
    <option value="14">14 Days (<?= date('Y-m-d H:i:s', strtotime("+14 days")) ?>)</option>
    </optgroup>
    <optgroup label="Permanent Ban Options">
      <option value="PERMANENT">Permanent - Never Lift Ban</option>
    </optgroup>
  </select>

使用類似的代碼:

 echo date('Y-m-d H:i:s', strtotime("+1 day"))

在您的情況下:

<option value="1">1 Day (<?= date('Y-m-d H:i:s', strtotime("+1 day")) ?>)</option>
    <option value="3">3 Days (<?= date('Y-m-d H:i:s', strtotime("+3 days")) ?>)</option>
    <option value="7">7 Days (<?= date('Y-m-d H:i:s', strtotime("+7 days")) ?>)</option>
    <option value="14">14 Days (<?= date('Y-m-d H:i:s', strtotime("+14 days")) ?>)</option>

閱讀有關strtotime函數的更多信息: http : //www.w3schools.com/php/func_date_strtotime.asp

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM