- CakePHP教程
- CakePHP - 主頁
- CakePHP - 概述
- CakePHP - 安裝
- CakePHP - 檔案結構
- CakePHP - 專案配置
- CakePHP - 路由
- CakePHP - 控制器
- CakePHP - 檢視
- CakePHP - 擴充套件檢視
- CakePHP - 檢視元素
- CakePHP - 檢視事件
- CakePHP - 使用資料庫
- CakePHP - 檢視記錄
- CakePHP - 更新記錄
- CakePHP - 刪除記錄
- CakePHP - 服務
- CakePHP - 錯誤和異常處理
- CakePHP - 日誌記錄
- CakePHP - 表單處理
- CakePHP - 國際化
- CakePHP - 會話管理
- CakePHP - Cookie管理
- CakePHP - 安全
- CakePHP - 驗證
- CakePHP - 建立驗證器
- CakePHP - 分頁
- CakePHP - 日期和時間
- CakePHP - 檔案上傳
- CakePHP有用的資源
- CakePHP - 快速指南
- CakePHP - 有用的資源
- CakePHP - 討論
CakePHP - 日期和時間
要在cakephp4中使用日期和時間,我們要利用已有的FrozenTime類。
要使用日期和時間,在控制器中包含該類
use Cake\I18n\FrozenTime;
讓我們使用FrozenTime類,對一個示例進行處理並顯示日期和時間。
示例
在config/routes.php檔案中進行更改,如下面的程式所示。
config/routes.php
<?php
use Cake\Http\Middleware\CsrfProtectionMiddleware;
use Cake\Routing\Route\DashedRoute;
use Cake\Routing\RouteBuilder;
$routes->setRouteClass(DashedRoute::class);
$routes->scope('/', function (RouteBuilder $builder) {
$builder->registerMiddleware('csrf', new CsrfProtectionMiddleware([
'httpOnly' => true,
]));
$builder->applyMiddleware('csrf');
//$builder->connect('/pages',['controller'=>'Pages','action'=>'display', 'home']);
$builder->connect('datetime',['controller'=>'Dates','action'=>'index']);
$builder->fallbacks();
});
在src/Controller/DatesController.php處建立一個DatesController.php檔案。將下面的程式碼複製到控制器檔案中。如果已建立,請忽略。
src/Controller/DatesController.php
<?php
namespace App\Controller;
use App\Controller\AppController;
use Cake\I18n\FrozenTime;
class DatesController extends AppController{
public function index(){
$time = FrozenTime::now();
$now = FrozenTime::parse('now');
$_now = $now->i18nFormat('yyyy-MM-dd HH:mm:ss');
$this->set('timenow', $_now);
$now = FrozenTime::parse('now');
$nice = $now->nice();
$this->set('nicetime', $nice);
$hebrewdate = $now->i18nFormat(\IntlDateFormatter::FULL, null, 'en-IR@calendar=hebrew');
$this->set("hebrewdate",$hebrewdate);
$japanesedate = $now->i18nFormat(\IntlDateFormatter::FULL, null, 'en-IR@calendar=japanese');
$this->set("japanesedate",$japanesedate);
$time = FrozenTime::now();
$this->set("current_year",$time->year);
$this->set("current_month",$time->month);
$this->set("current_day",$time->day);
}
}
?>
在src/Template下建立一個名為Dates的目錄,並在該目錄下建立一個名為index.php的檢視檔案。將下面的程式碼複製到該檔案中。
src/Template/Dates/index.php
<?php echo "The Current date and time is = ".$timenow; echo "<br/>"; echo "Using nice format available = ".$nicetime; echo "<br/>"; echo "Date and Time as per Hebrew Calender =" .$hebrewdate; echo "<br/>"; echo "Date and Time as per Japanese Calender =" .$japanesedate; echo "<br/>"; echo "Current Year = ".$current_year; echo "<br/>"; echo "Current Month = ".$current_month; echo "<br/>"; echo "Current Day = ".$current_day; ?>
透過訪問下面的URL來執行上面的示例 -
https:///cakephp4/datetime
輸出
執行程式碼後,你將看到下面的輸出 -
廣告