ホームページ  >  記事  >  バックエンド開発  >  Yii2 の GridView での日付の書式設定と日付の検索可能化

Yii2 の GridView での日付の書式設定と日付の検索可能化

不言
不言オリジナル
2018-06-08 10:22:121981ブラウズ

この記事は主に Yii2 GridView の日付フォーマットと日付検索可能なチュートリアル関連情報の実装を紹介します。必要な友人はそれを参照してください。

最初に日付フォーマットのレンダリングを示します。満足していただければ、読み続けてください。 :

これについてはケースバイケースで説明します

1 データベース フィールド created_at が保存されている場合。時間形式は date または datetime です。上図の右側に示すように、created_at フィールドを直接出力するだけです。データベースは上図の左側に示されているように、次のように出力する必要があります。

[
'attribute' => 'created_at',
'value' => function ($model) {
return date('Y-m-d H:i:s', $model->created_at);
},
],
[
'attribute' => 'created_at',
'format' => ['date', 'Y-m-d H:i:s'],
],

上記は形式を出力する 2 つの方法を示しています。どちらも許容されます。ただし、検索メカニズムを実装する場合、データベースに datetime 型を格納すると非常に便利です。

コードは次のとおりです。 #

$query->andFilterWhere([
// ......
'created_at' => $this->created_at,
// ......
]);

データベースにタイムスタンプが保存されている場合。

最初のステップでは、以下の図に示すように対応するルールを変更します。2 番目のステップでは、dataProvider を変更します。次のコードを参照してください。

//我们搜索输入框中输入的格式一般是 2016-01-01 而非时间戳
//输出2016-01-01无非是想搜索这一天的数据,因此代码如下
if ($this->created_at) {
$createdAt = strtotime($this->created_at);
$createdAtEnd = $createdAt + 24*3600;
$query->andWhere("created_at >= {$createdAt} AND created_at <= {$createdAtEnd}");
}

以上がこの記事の全内容です。その他の関連コンテンツについては、PHP 中国語 Web サイトをご覧ください。

関連する推奨事項:

Nginx で pathinfo と ThinkPHP の URL パターンを実装します。

Yii2.0 は Access 設定メソッドから pathinfo を実装します


#

以上がYii2 の GridView での日付の書式設定と日付の検索可能化の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。