ホームページ バックエンド開発 PHPチュートリアル PHP 日付と時刻の処理 - Zheng Aqi (続き)_PHP チュートリアル

PHP 日付と時刻の処理 - Zheng Aqi (続き)_PHP チュートリアル

Jul 21, 2016 pm 03:26 PM
php そして 対処する データ データベース 日付 時間 時間 タイプ

1.UNIXタイムスタンプ
phpdはデータを処理します。特にデータベース内の時刻型データをフォーマットする場合、まず時刻型データをUNIXタイムスタンプに変換して処理する必要があります。異なるデータベース システムは、時刻型データの変換と互換性がありません。この場合、時刻を UNIX タイムスタンプに変換する必要があります。このようにして、さまざまなデータベース システムのクロスプラットフォームの性質が実現されます。

2. 時間をタイムスタンプに変換する
文字列で表現された日付と時間をタイムスタンプ形式に変換したい場合は、strtotime() 関数を使用できます。
構文形式は次のとおりです:
int strtotime(string $time [, int $now ])
例:

コードをコピーします コードは次のとおりです:
echo strtotime('2009-03-05 '); //出力 1236211200
echo strtotime('2009-03-05 10:24:30') //出力 1236248670
echo strtotime("2000 年 9 月 10 日");出力 968544000
?>
另一个取得日期的UNIX时间戳的函数是mktime()函数,
语法格式如下:
int mktime([int $hour [, int $minute [, int $second [, int $month [, int $day [, int $year]]]]]])
3.获取日期和时间
1.data()函数
是将时间戳照给定的格式转化为具体的日期和时间字符串。
语法格式如下:
string date(string $format [, int $timestamp ])
说明:
$format指定了转化后的日期和时间的格式,
$timestamp是需要转化的时间戳,如果省略则使用本地当前时间,即默认值为time()函数的值。
time()函数返回当前时间的时间戳
date函数的$format参数的取值如下表。
表4.6 date()函数支持的格式代码

字 符

说 明

返回值例子

d

月份中的第几天,有前导零的2位数字

01~31

D

星期中的第几天,用3个字母表示

Mon到Sun

j

月份中的第几天,没有前导零

1~31

l

星期几,完整的文本格式

Sunday~Saturday

N

ISO-8601格式数字表示的星期中的第几天

1(星期一)~7(星期天)

S

每月天数后面的英文后缀,用2个字符表示

st、nd、rd或th,可以和j一起用

w

星期中的第几天,数字表示

0(星期天)~6(星期六)

z

年份中的第几天

0~366

W

ISO-8601格式年份中的第几周,每周从星期一开始

例如:42(当年的第42周)

F

月份,完整的文本格式,如January或March

January~December

m

数字表示的月份,有前导零

01~12

M

三个字母缩写表示的月份

Jan~Dec

n

数字表示的月份,没有前导零

1~12

t

给定月份所应有的天数

28~31

L

是否为闰年

如果是闰年为1,否则为0

o

ISO-8601格式年份数字。这和Y的值相同,只是如果ISO的星期数(W)属于前一年或下一年,则用那一年

例如:1999或2003

Y

4位数字完整表示的年份

例如:1999或2003

y

2位数字表示的年份

例如:99或03

a

小写的上午和下午值

am或pm

A

大写的上午和下午值

AM或PM

B

Swatch Internet标准时

000~999

g

小时,12小时格式,没有前导零

1~12

G

小时,24小时格式,没有前导零

0~23

h

小时,12小时格式,有前导零

01~12

H

小时,24小时格式,有前导零

00~23

i

有前导零的分钟数

00~59

s

秒数,有前导零

00~59

e

时区标志

例如:UTC,GMT,Atlantic/Azores

I

是否为夏令时

如果是夏令时为 1,否则为0

O

与格林尼治时间相差的小时数

例如:+0200

P

与格林尼治时间(GMT)的差别,小时和分钟之间用冒号分隔

例如:+02:00

T

本机所在的时区

例如:EST,MDT

Z

时区偏移量的秒数。UTC 西边的时区偏移量总是负的,UTC 东边的时区偏移量总是正的

-43200~43200

c

ISO 8601格式的日期

2004-02-12T15:19:21+00:00

r

RFC 822 格式的日期

Thu, 21 Dec 2000 16:01:07 +0200

U

从UNIX纪元开始至今的秒数

time()函数

2.getdate()函数
可以获得日期和时间信息数组,
语法格式如下:
array getdate([ int $timestamp ])
说明:$timestamp是要转化的时间戳,如果不给出则使用当前时间。
函数根据$timestamp返回一个包含日期和时间信息的数组,数组的键名和值如表4.7所示

键 名

说 明

值 的 例 子

seconds

秒的数字表示

0~59

minutes

分钟的数字表示

0~59

hours

小时的数字表示

0~23

mday

月份中第几天的数字表示

1~31

wday

星期中第几天的数字表示

0(表示星期天)~6(表示星期六)

mon

月份的数字表示

1~12

year

4位数字表示的完整年份

例如:1999或2003

yday

一年中第几天的数字表示

0~365

weekday

星期几的完整文本表示

Sunday~Saturday

month

月份的完整文本表示

January~December

0

自UNIX 纪元开始至今的秒数

系统相关,典型值从-2147483648~2147483647

4.6.4 その他の日付と時刻の関数
1. 日付と時刻の計算
コードをコピーする コードは次のとおりです:

$oldtime=mktime(0,0,0,9) ,24, 2008);
$newtime=mktime(0,0,0,10,12,2008); // 日数を計算します。 2 つの時間の差
echo $days; //出力 18


2. 日付の確認
checkdate() 関数を使用して、日付データが有効かどうかを確認できます。 bool checkdate( int $month , int $day , int $year)



コードをコピー
コードは次のとおりです: var_dump(checkdate(12,31,2000)) / /Output bool(TRUE)
var_dump(checkdate(2,29 ,2001)); //Output bool(FALSE)


3. タイムゾーンを設定します
システムのデフォルトはグリニッジ標準時です。表示される現在時刻は現地時間と異なる場合があります。 PHP は、タイムゾーンを変更できる関数 date_default_timezone_set() を提供します。
構文形式は次のとおりです:
bool date_default_timezone_set (string $timezone_identifier)
パラメーター $timezone_identifier は、指定するタイムゾーンです
使用可能な値中国本土の場合は、アジア/重慶、アジア/上海、アジア/ウルムチ (重慶、上海、ウルムチの順) です。 PRC は北京時間で使用できます。
4.5 例 - カレンダーの生成



コードをコピー
コードは次のとおりです: $year=@$_GET['year'] // アドレスバーの年を取得します
$month=@$ _GET['month']; //アドレスバーの月を取得します
if(empty($year))
$year=date("Y"); //今年の年に初期化されます
if(empty($month))
$month=date("n"); //今月の月に初期化します
$day=date("j"); //その日の日数を取得します
$wd_ar=array("day","1", "two","three","four","five","six"); //週配列
$wd=date("w",mktime); (0,0,0,$month,1,$year )); //月の最初の日が何曜日であるかを計算します
//年 link
$y_lnk1=$year<=1970?$year= 1970:$year-1; //前年
$y_lnk2=$year> =2037?$year=2037:$year+1; //来年
//月リンク
$m_lnk1=$month<=1? $month=1:$month-1; //先月
$ m_lnk2=$month>=12?$month=12:$month+1; //来月
echo "";
//年を出力します。「<」リンクをクリックすると前の年にジャンプし、「>」リンクをクリックすると年を出力します。次の年にジャンプします
echo "
<
".$year."year< ;a href='EX4_15.php?year=$y_lnk2&month=$month' >>";
//月を出力します。「<」リンクをクリックしてジャンプします。前の月の場合は、「>」リンクをクリックして次の月に移動します
echo "
<
".$month."month>";
echo "
";
for($i=0 ;$i<7;$i++)
{
echo " "; //週の配列を出力します
}
echo "";
$ tnum=$wd+date("t",mktime(0,0,0,$month,1,$year)) / /曜日と月の日数を計算します
for($i=0;$i{
$date=$i+1-$wd;テーブル内のその日の位置
if($i%7==0) echo "" //行の先頭
if($i>) ;=$wd)
{
if($date==$day&&$month==date("n")) //If 現在の日の場合、日番号が黒く表示されます
echo "< ;b>".$day."";
else
echo $date; //日数を出力します
}
echo " ";
if($i%7= =6) echo " "; //行末
}
echo "
$wd_ar[$i]
"

;



http://www.bkjia.com/PHPjc/323881.html
www.bkjia.com

tru​​e

技術記事 1. UNIX タイムスタンプ phpd はデータを処理します。特にデータベース内の時刻型データをフォーマットする場合、最初に時刻型データを UNIX タイムスタンプに変換して処理する必要があります。異なるデータベース...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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)

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

今まで知らなかったことを後悔している 7 つの PHP 関数 今まで知らなかったことを後悔している 7 つの PHP 関数 Nov 13, 2024 am 09:42 AM

あなたが経験豊富な PHP 開発者であれば、すでにそこにいて、すでにそれを行っていると感じているかもしれません。あなたは、運用を達成するために、かなりの数のアプリケーションを開発し、数百万行のコードをデバッグし、大量のスクリプトを微調整してきました。

PHPでHTML/XMLを解析および処理するにはどうすればよいですか? PHPでHTML/XMLを解析および処理するにはどうすればよいですか? Feb 07, 2025 am 11:57 AM

このチュートリアルでは、PHPを使用してXMLドキュメントを効率的に処理する方法を示しています。 XML(拡張可能なマークアップ言語)は、人間の読みやすさとマシン解析の両方に合わせて設計された多用途のテキストベースのマークアップ言語です。一般的にデータストレージに使用されます

JSON Web Tokens(JWT)とPHP APIでのユースケースを説明してください。 JSON Web Tokens(JWT)とPHP APIでのユースケースを説明してください。 Apr 05, 2025 am 12:04 AM

JWTは、JSONに基づくオープン標準であり、主にアイデンティティ認証と情報交換のために、当事者間で情報を安全に送信するために使用されます。 1。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。 2。JWTの実用的な原則には、JWTの生成、JWTの検証、ペイロードの解析という3つのステップが含まれます。 3. PHPでの認証にJWTを使用する場合、JWTを生成および検証でき、ユーザーの役割と許可情報を高度な使用に含めることができます。 4.一般的なエラーには、署名検証障害、トークンの有効期限、およびペイロードが大きくなります。デバッグスキルには、デバッグツールの使用とロギングが含まれます。 5.パフォーマンスの最適化とベストプラクティスには、適切な署名アルゴリズムの使用、有効期間を合理的に設定することが含まれます。

母音を文字列にカウントするPHPプログラム 母音を文字列にカウントするPHPプログラム Feb 07, 2025 pm 12:12 PM

文字列は、文字、数字、シンボルを含む一連の文字です。このチュートリアルでは、さまざまな方法を使用してPHPの特定の文字列内の母音の数を計算する方法を学びます。英語の母音は、a、e、i、o、u、そしてそれらは大文字または小文字である可能性があります。 母音とは何ですか? 母音は、特定の発音を表すアルファベットのある文字です。大文字と小文字など、英語には5つの母音があります。 a、e、i、o、u 例1 入力:string = "tutorialspoint" 出力:6 説明する 文字列「TutorialSpoint」の母音は、u、o、i、a、o、iです。合計で6元があります

PHPでの後期静的結合を説明します(静的::)。 PHPでの後期静的結合を説明します(静的::)。 Apr 03, 2025 am 12:04 AM

静的結合(静的::) PHPで後期静的結合(LSB)を実装し、クラスを定義するのではなく、静的コンテキストで呼び出しクラスを参照できるようにします。 1)解析プロセスは実行時に実行されます。2)継承関係のコールクラスを検索します。3)パフォーマンスオーバーヘッドをもたらす可能性があります。

PHPマジックメソッド(__construct、__destruct、__call、__get、__setなど)とは何ですか? PHPマジックメソッド(__construct、__destruct、__call、__get、__setなど)とは何ですか? Apr 03, 2025 am 12:03 AM

PHPの魔法の方法は何ですか? PHPの魔法の方法には次のものが含まれます。1。\ _ \ _コンストラクト、オブジェクトの初期化に使用されます。 2。\ _ \ _リソースのクリーンアップに使用される破壊。 3。\ _ \ _呼び出し、存在しないメソッド呼び出しを処理します。 4。\ _ \ _ get、dynamic属性アクセスを実装します。 5。\ _ \ _セット、動的属性設定を実装します。これらの方法は、特定の状況で自動的に呼び出され、コードの柔軟性と効率を向上させます。

See all articles