ホームページ バックエンド開発 PHPチュートリアル DateFormat PHP クラス (php ハンドルの日付)

DateFormat PHP クラス (php ハンドルの日付)

Jun 13, 2016 pm 01:07 PM
date function gt return

DateFormat PHP クラス (php 处理日期)

代:

<?php

class FormatDate
{
    var $theTime;
    function FormatDate($string)
    {
        	//Set constructor
	        $this->theTime = $string;
	}

	//Returns numerical day
	function Day() 	{	return date("j", $this->theTime); }
	
	//Returns weekday
	function WeekDay() 	{ 	return date("l", $this->theTime); }

	//Returns full month
	function Month()	{	return date("F", $this->theTime); }

	//Returns short-hand month
	function MonthShort() 	{ 	return date("M", $this->theTime); }

	//Numeric for month
	function MonthNum() 	{ 	return date("n", $this->theTime); }
	
	//Full 4 digit year
	function YearFull() 	{ 	return date("Y", $this->theTime); }

	//Short 2 digit year
	function Year() 	{ 	return date("y", $this->theTime); }

	//24 Hr with Seconds
	function MilitaryFull()	{	return date("G:i:s", $this->theTime); }

	//24 Hr without Seconds
	function Military()	{	return date("G:i", $this->theTime); }

	//Standard with seconds
	function StandardFull()	{	return date("g:i:s a", $this->theTime); }

	//Standard without seconds
	function Standard()	{	return date("g:i a", $this->theTime); }

	//Date & Month & Year Full
	function TextDate()	{	$string = $this->Month()." ".$this->Day()." ".$this->YearFull();
					return $string;
				}
	
	//Date & Month & Year Shorthand
	function TextDateShort(){	$string = $this->MonthShort()." ".$this->Day()." ".$this->Year();
					return $string;
				}

	//Numerical Date & Month & Year
	function NumDate()	{	$string = $this->MonthNum()."/".$this->Day()."/".$this->YearFull();
					return $string;
				}

	//Numerical Date & Month & Year Shorthand
	function NumDateShort()	{	$string = $this->MonthNum()."/".$this->Day()."/".$this->Year();
					return $string;
				}

	//Month & Day Full
	function MonthDay()	{	$string = $this->Month()." ".$this->Day();
					return $string;
				}

	//Month & Day Short
	function MonthDayShort(){	$string = $this->MonthShort()." ".$this->Day();
					return $string;
				}

	function TimeSince($old_stamp) {
		$difference = $this->theTime - $old_stamp;
		
		$loop = true;
		while($loop) {
			if(round($difference/3153600, 2) >= 1) { return "Over a year..."; }
			elseif(round($difference/2592000, 2) >= 2) { return "Over ".round($difference/2592000,0)." months ago..."; }	
			elseif(round($difference/2592000, 2) >= 1.20) { return "Over a month ago..."; }
			elseif(round($difference/604800, 2) >= 2) { return "Over ".round($difference/604800,0)." weeks ago.."; }
			elseif(round($difference/604800, 2) >= 1.20) { return "Over a week ago.."; }
			elseif(round($difference/86400, 2) >= 1.9) { return "Over a few days ago...";}
			elseif(round($difference/3600, 2) >= 3) { return "Just a few hours ago.."; }
			elseif(round($difference/3600, 2) >= 8) { return "About half a day ago..."; }
		
			elseif(round($difference/3600, 2) < 1) { return "Less than an hour ago..."; }
			elseif(round($difference/86400, 2) < 1.9) { return "About a day ago..."; }
			elseif(round($difference/86400, 2) < 6 ) { return "Less than a week ago..."; }
			elseif(round($difference/604800, 2) < 1.20) { return "About a week ago.."; }
			elseif(round($difference/2592000, 2) < 1.20) { return "About a month ago..."; }
			
			else{ return "Error"; }
			$loop = false;
		}		
		
	}
}
ログイン後にコピー
?

实例:

$date = new FormatDate(time());

echo $date->Day().'<br>';
// 2

echo $date->WeekDay().'<br>';
// Tuesday

echo $date->Month().'<br>';
// August

echo $date->MonthShort().'<br>';
// Aug

echo $date->MonthNum().'<br>';
// 8

echo $date->YearFull().'<br>';
// 2011

echo $date->Year().'<br>';
// 11

echo $date->MilitaryFull().'<br>';
// 9:08:40

echo $date->Military().'<br>';
// 9:08

echo $date->StandardFull().'<br>';
// 9:08:40 am

echo $date->Standard().'<br>';
// 9:08 am

echo $date->TextDate().'<br>';
// August 2 2011

echo $date->TextDateShort().'<br>';
// Aug 2 11

echo $date->NumDate().'<br>';
// 8/2/2011

echo $date->NumDateShort().'<br>';
// 8/2/11

echo $date->MonthDay().'<br>';
// August 2

echo $date->MonthDayShort().'<br>';
// Aug 2

echo $date->TimeSince(time()).'<br>';
// Less than an hour ago...
ログイン後にコピー

?

DateFormat クラスのドキュメント

クラスを初期化します
$date = new FormatDate(time());

数字の日
$date->Day();

テキストデー
$date->WeekDay();

月 (フル)
$date->Month();

月 (短い)
$date->MonthShort();

月 (数値)
$date->MonthNum();

年 (フル)
$date->yearFull();

年 (短い)
$date->年();

軍事 (秒)
$date->MilitaryFull();

軍事 (秒なし)
$date->軍事();

スタンダード (フル)
$date->StandardFull();

標準
$date->Standard();

テキスト日付 (完全)
$date->TextDate();

テキスト日付 (短い)
$date->TextDateShort();

数値日付 (完全)
$date->NumDate();

数値日付 (短い)
$date->NumDateShort();

月と日 (完全)
$date->MonthDay();

月と日 (短い)
$date->MonthDayShort();


からの経過時間 $date->TimeSince($timestamp);

?

格式: http://php.net/manual/en/function.date.php

format キャラクター 説明 戻り値の例
--- ---
d 日付、先頭にゼロが付いた 2 桁 01 31まで
D 一日を 3 文字で表現したテキスト 太陽を通して
j 先行ゼロを除いた月の日付 1 31まで
l (小文字の「L」) 曜日の完全なテキスト表現 日曜日 土曜日まで
N ISO-8601 曜日の数値表現 (追加 PHP 5.1.0) 1 (月曜日の場合) 7 まで (日曜日の場合)
S 月の日を表す英語の序数接尾辞、2 文字 st番目番目 または 番目j とうまく連携します
曜日の数値表現 0 (日曜日の場合) 6 まで (土曜日の場合)
z 年間の日 (0 から始まります) 0 365 を通じて
--- ---
W ISO-8601 年の週番号、月曜日から始まる週 (PHP 4.1.0 で追加) 例: 42 (年の第 42 週)
--- ---
1 月や 3 月などの月の完全なテキスト表現 1月 12 月 まで
先頭にゼロを付けた月の数値表現 01 12まで
月を 3 文字で表現した短いテキスト 1月 12 月 まで
先行ゼロを除いた月の数値表現 1 12まで
t 指定された月の日数 28 31まで
--- ---
L 閏年かどうか 1 うるう年の場合は、0 それ以外の場合は。
ISO-8601 の年番号。これは次と同じ値です はい ただし、ISO の週番号が ( ) 前年または翌年、その年に属します 代わりに使用されます。 (PHP 5.1.0 で追加) 例: 1999 または2003
はい 年の 4 桁の完全な数値表現 例: 1999 または2003
年を 2 桁で表したもの 例: 99 または 03
時間 --- ---
a 小文字のメリディエム前とメリディエム後 午前 または午後
A 大文字のメリディエム前とメリディエム後 午前 または午後
B インターネット時間の見本 000 999まで
g 先頭のゼロを除いた 12 時間形式の時間を表します 1 12まで
G 先行ゼロのない時間を表す 24 時間形式 0 23まで
先頭にゼロが付いた 12 時間形式の時間を表します 01 12まで
先頭にゼロを付けた 24 時間形式の時間を表します 00 23まで
先頭にゼロを含む分 00 59
秒、先行ゼロ付き 00 59まで
あなた マイクロ秒 (PHP 5.2.2 で追加) 例: 654321
タイムゾーン --- ---
タイムゾーン識別子 (PHP 5.1.0 で追加) 例: UTCGMT大西洋/アゾレス諸島
(大文字の i) 日付が夏時間であるかどうか 1 夏時間の場合、0 それ以外の場合は。
グリニッジ時間 (GMT) との時間差 例: +0200
時と分の間にコロンを付けたグリニッジ時間 (GMT) との差 (PHP 5.1.3 で追加) 例: +02:00
タイムゾーンの略語 例: ESTMDT ...
Z 秒単位のタイムゾーン オフセット。 UTC より西のタイムゾーンのオフセットは常に次のとおりです。 負であり、UTC より東の場合は常に正です。 -43200 50400 まで
完全な日付/時刻 --- ---
c ISO 8601 の日付 (PHP 5 で追加) 2004-02-12T15:19:21+00:00
r ??RFC 2822 フォーマットされた日付 例: Thu, 21 Dec 2000 16:01:07 +0200
Unix エポック (1970 年 1 月 1 日 00:00:00 GMT) からの秒数 time() も参照

フォーマット文字列内の認識されない文字は印刷されます そのまま。 Z 形式は常に返されます 0 gmdate() を使用する場合

注意 :

この関数は 整数のみを受け入れるため、 タイムスタンプ あなた フォーマット文字は、 date_format() ユーザーベースのタイムスタンプを使用する関数 date_create() で作成されました

timestamp

オプションの timestamp パラメータは 整数 デフォルトで現在に設定される Unix タイムスタンプ 現地時間 timestamp の場合 は与えられない。その他では つまり、デフォルトでは time() の値になります。

?

?

?

?

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Huawei GT3 ProとGT4の違いは何ですか? Huawei GT3 ProとGT4の違いは何ですか? Dec 29, 2023 pm 02:27 PM

多くのユーザーはスマートウォッチを選ぶときにファーウェイブランドを選択しますが、その中でもファーウェイ GT3pro と GT4 は非常に人気のある選択肢であり、多くのユーザーはファーウェイ GT3pro と GT4 の違いに興味を持っています。 Huawei GT3pro と GT4 の違いは何ですか? 1. 外観 GT4: 46mm と 41mm、材質はガラスミラー + ステンレススチールボディ + 高解像度ファイバーバックシェルです。 GT3pro: 46.6mm および 42.9mm、材質はサファイアガラス + チタンボディ/セラミックボディ + セラミックバックシェルです。 2. 健全な GT4: 最新の Huawei Truseen5.5+ アルゴリズムを使用すると、結果はより正確になります。 GT3pro: ECG 心電図と血管と安全性を追加

C言語のreturnの使い方を詳しく解説 C言語のreturnの使い方を詳しく解説 Oct 07, 2023 am 10:58 AM

C 言語における return の使い方は、 1. 戻り値の型が void の関数については、return 文を使用して関数の実行を早期に終了することができます; 2. 戻り値の型が void ではない関数については、 return ステートメントは、関数の実行を終了するためのものです。結果は呼び出し元に返されます。 3. 関数の実行を早期に終了します。関数内で return ステートメントを使用して、関数の実行を早期に終了することもできます。関数が値を返さない場合。

現在のタイムスタンプに基づいてファイル/フォルダーを作成し、名前を付ける方法 現在のタイムスタンプに基づいてファイル/フォルダーを作成し、名前を付ける方法 Apr 27, 2023 pm 11:07 PM

システムのタイムスタンプに基づいてファイルやフォルダーを自動的に作成し、名前を付ける方法を探している場合は、ここが最適な場所です。このタスクを達成するための非常に簡単な方法があります。作成されたフォルダーまたはファイルは、ファイルのバックアップの保存、日付に基づいたファイルの並べ替えなど、さまざまな目的に使用できます。この記事では、Windows 11/10 でファイルとフォルダーを自動的に作成し、システムのタイムスタンプに基づいて名前を付ける方法を、非常に簡単な手順で説明します。使用される方法はバッチ スクリプトであり、非常に簡単です。この記事を楽しんで読んでいただければ幸いです。セクション 1: システムの現在のタイムスタンプに基づいてフォルダーを自動的に作成し、名前を付ける方法 ステップ 1: まず、フォルダーを作成する親フォルダーに移動します。

機能とはどういう意味ですか? 機能とはどういう意味ですか? Aug 04, 2023 am 10:33 AM

ファンクションとは、関数を意味します。これは、特定の関数を備えた再利用可能なコード ブロックです。プログラムの基本コンポーネントの 1 つです。入力パラメータを受け取り、特定の操作を実行し、結果を返すことができます。その目的は、再利用可能なコード ブロックをカプセル化することです。コードの再利用性と保守性を向上させるコード。

PHP 警告: date() はパラメータ 2 が長いことを予期しており、解決策が与えられた文字列です PHP 警告: date() はパラメータ 2 が長いことを予期しており、解決策が与えられた文字列です Jun 22, 2023 pm 08:03 PM

PHP プログラムを使用して開発する場合、警告メッセージやエラー メッセージが表示されることがよくあります。その中で、表示される可能性のあるエラー メッセージの 1 つは、PHPWarning:date()expectsparameter2tobelong,stringgiven です。エラー メッセージの意味は次のとおりです。関数 date() の 2 番目のパラメーターは長整数 (long) であることが予期されていますが、実際に渡されるのは文字列 (string) です。それで、私たちは

修正: Windows 11 で Snipping ツールが機能しない 修正: Windows 11 で Snipping ツールが機能しない Aug 24, 2023 am 09:48 AM

Windows 11 で Snipping Tool が機能しない理由 問題の根本原因を理解すると、適切な解決策を見つけるのに役立ちます。 Snipping Tool が正しく動作しない主な理由は次のとおりです。 フォーカス アシスタントがオンになっている: これにより、Snipping Tool が開かなくなります。破損したアプリケーション: 起動時にスニッピング ツールがクラッシュする場合は、破損している可能性があります。古いグラフィック ドライバー: 互換性のないドライバーは、スニッピング ツールに干渉する可能性があります。他のアプリケーションからの干渉: 実行中の他のアプリケーションが Snipping Tool と競合する可能性があります。証明書の有効期限が切れています: アップグレード プロセス中のエラーにより、この問題が発生する可能性があります。これらの簡単な解決策は、ほとんどのユーザーに適しており、特別な技術知識は必要ありません。 1. Windows および Microsoft Store アプリを更新する

Javaのreturn文とfinally文の実行順序は何ですか? Javaのreturn文とfinally文の実行順序は何ですか? Apr 25, 2023 pm 07:55 PM

ソースコード: publicclassReturnFinallyDemo{publicstaticvoidmain(String[]args){System.out.println(case1());}publicstaticintcase1(){intx;try{x=1;returnx;}finally{x=3;}}}#出力 上記のコードの出力は、単純に次のように結論付けることができます:finally の前に return が実行されます。バイトコード レベルで何が起こるかを見てみましょう。以下は、case1 メソッドのバイトコードの一部をインターセプトし、ソース コードを比較して、各命令の意味に注釈を付けます。

iPhoneでApp Storeに接続できないエラーを修正する方法 iPhoneでApp Storeに接続できないエラーを修正する方法 Jul 29, 2023 am 08:22 AM

パート 1: 最初のトラブルシューティング手順 Apple のシステムステータスを確認する: 複雑な解決策を掘り下げる前に、基本から始めましょう。問題はデバイスにあるのではなく、Apple のサーバーがダウンしている可能性があります。 Apple のシステム ステータス ページにアクセスして、AppStore が適切に動作しているかどうかを確認してください。問題があれば、Apple が修正してくれるのを待つしかありません。インターネット接続を確認します。「AppStore に接続できません」問題は接続不良が原因である場合があるため、安定したインターネット接続があることを確認してください。 Wi-Fi とモバイル データを切り替えるか、ネットワーク設定をリセットしてみてください ([一般] > [リセット] > [ネットワーク設定のリセット] > [設定])。 iOS バージョンを更新します。

See all articles