CakePHP - Ngày và giờ
Để làm việc với ngày và giờ trong cakephp4, chúng tôi sẽ sử dụng lớp FrozenTime có sẵn.
Để làm việc với ngày và giờ, hãy đưa lớp vào bộ điều khiển của bạn
use Cake\I18n\FrozenTime;
Hãy để chúng tôi làm việc, trên một ví dụ và hiển thị ngày và giờ, bằng cách sử dụng lớp FrozenTime.
Thí dụ
Thực hiện các thay đổi trong tệp config / route.php như được hiển thị trong chương trình sau.
config / route.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();
});
Tạo một DatesController.php nộp tại src/Controller/DatesController.php.Sao chép mã sau vào tệp bộ điều khiển. Bỏ qua nếu đã được tạo.
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);
}
}
?>
Tạo một thư mục Dates tại src/Template và trong thư mục đó tạo một Viewtệp có tên là index.php. Sao chép mã sau vào tệp đó.
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;
?>
Thực hiện ví dụ trên bằng cách truy cập URL sau:
http: // localhost / cakephp4 / datetime
Đầu ra
Khi bạn chạy mã, bạn sẽ thấy kết quả sau: