


Common formatted display time and date functions in PHP_PHP tutorial
The date function in PHP can format the date and time and display it. These are also some examples that we often use. Let’s introduce it to my friends. I hope this tutorial will be helpful to everyone.
time() function
The time() function returns the Unix timestamp of the current time. Returns the number of seconds since the Unix epoch (January 1, 1970 00:00:00 GMT) to the current time.
Since PHP 5.1, the timestamp of the time when the request was initiated is saved in $_SERVER['REQUEST_TIME'].
The code is as follows | Copy code | ||||||||
echo($time . " "); echo(date("D F d Y", $time)); ?> Program execution result: 1292984702
Wed December 22 2010 |
The unit of 1292984702 is seconds, the number of seconds from 00:00:00 on January 1, 1970 to the present.
代码如下 | 复制代码 |
echo("Result with date(): echo("Result with gmdate(): 程序运行结果:
Result with gmdate(): |
The code is as follows | Copy code | ||||
$nextWeek = time() + (7 * 24 * 60 * 60); // 7 days; 24 hours; 60 mins; 60secs echo 'Now: '. date('Y-m-d') ." "; echo 'Next Week: '. date('Y-m-d D', $nextWeek) ." "; ?>
|
The code is as follows | Copy code |
echo("Result with date(): "); echo(date("l") . " "); echo(date("l dS of F Y h:i:s A") . " "); echo("Oct 3,1975 was on a ".date("l", mktime(0,0,0,10,3,1975))." "); echo(date(DATE_RFC822) . " "); echo(date(DATE_ATOM,mktime(0,0,0,10,3,1975)) . " "); echo("Result with gmdate(): "); echo(gmdate("l") . " "); echo(gmdate("l dS of F Y h:i:s A") . " "); echo("Oct 3,1975 was on a ".gmdate("l", mktime(0,0,0,10,3,1975))." "); echo(gmdate(DATE_RFC822) . " "); echo(gmdate(DATE_ATOM,mktime(0,0,0,10,3,1975)) . " "); ?> Program execution result: Result with date(): Wednesday Wednesday 22nd of December 2010 02:36:18 AM Oct 3,1975 was on a Friday Wed, 22 Dec 10 02:36:18 +0000 1975-10-03T00:00:00+00:00 Result with gmdate(): Wednesday Wednesday 22nd of December 2010 02:36:18 AM Oct 3,1975 was on a Friday Wed, 22 Dec 10 02:36:18 +0000 1975-10-03T00:00:00+00:00 |
The code is as follows | Copy code |
echo gmdate('Y-m-d H:i:s', time() + 3600 * 8); |
In this way, the correct results are obtained regardless of whether it is under Linux+Apache or Windows. Of course, there is another advantage of writing this way. When the website is for the whole world, the website user only needs to set the time zone, and the program will automatically adjust the time zone according to the user's location. The set time zone is used for time calculation. The information release time in the database only stores the time generated by the current time(). Then the release time seen in China +8 time zone is: 2007-03-14 12:15:27, then in Users in the European +2 time zone will see that the release time of this information is: 2007-03-14 06:15:27, so that all the times of the information will be correct.
A custom format for displaying dates for the community
代码如下 | 复制代码 |
/** * 格式化显示时间函数 * * 类似豆瓣(几秒前/几分前/今天3:50/昨天3:50/3-6) * * @param $timestamp 时间戳 必选参数,后面三个参数可选,为提高计算速度,建议直接赋值 * @param $now 当前时间戳 * @param $today 今天00:00时间戳 * @param $yesterday 昨天00:00时间戳 * @return string */ function timeshow($timestamp,$now=0,$today=0,$yesterday = 0){ if(! $timestamp){return '';} if(! $now){$now = time();} if(! $today){$today = strtotime("today");} if(! $yesterday){$yesterday = $today-86400;} $cha = $now-$timestamp; if($cha return $cha."秒前"; }elseif($cha $min = floor($cha/60); return $min."分钟前"; }elseif($timestamp>=$today){ return date("今天H:i",$timestamp); }elseif($timestamp>=$yesterday){ return date("昨天H:i",$timestamp); }else{ return date("m-d",$timestamp); } } |
At the end of the article, I will introduce you to some parameters
格式化方式 | 说明 |
---|---|
Y | 4位数字年,y为2位数字,如99即1999年 |
m | 数字月份,前面有前导0,如01。n 为无前导0数字月份 |
F | 月份,完整的文本格式,例如 January 或者 March |
M | 三个字母缩写表示的月份,例如 Jan 或者 Mar |
d | 月份中的第几天,前面有前导0,如03。j 为无前导0的天数 |
w | 星期中的第几天,以数字表示,0表示星期天 |
z | 年份中的第几天,范围0-366 |
W | 年份中的第几周,如第32周 |
H | 24小时格式,有前导0,h为12小时格式 |
G | 24小时格式,无前导0,g为对应12小时格式 |
i | 分钟格式,有前导0 |
s | 秒格式,有前导0 |
A | 大写上下午,如AM,a为小写 |
The optional parameter timestamp represents the timestamp, and the default is time(), which is the current timestamp.

In PHP, you can use session_status() or session_id() to check whether the session has started. 1) Use the session_status() function. If PHP_SESSION_ACTIVE is returned, the session has been started. 2) Use the session_id() function, if a non-empty string is returned, the session has been started. Both methods can effectively check the session state, and choosing which method to use depends on the PHP version and personal preferences.

Sessionsarevitalinwebapplications,especiallyfore-commerceplatforms.Theymaintainuserdataacrossrequests,crucialforshoppingcarts,authentication,andpersonalization.InFlask,sessionscanbeimplementedusingsimplecodetomanageuserloginsanddatapersistence.

Managing concurrent session access in PHP can be done by the following methods: 1. Use the database to store session data, 2. Use Redis or Memcached, 3. Implement a session locking strategy. These methods help ensure data consistency and improve concurrency performance.

PHPsessionshaveseverallimitations:1)Storageconstraintscanleadtoperformanceissues;2)Securityvulnerabilitieslikesessionfixationattacksexist;3)Scalabilityischallengingduetoserver-specificstorage;4)Sessionexpirationmanagementcanbeproblematic;5)Datapersis

Load balancing affects session management, but can be resolved with session replication, session stickiness, and centralized session storage. 1. Session Replication Copy session data between servers. 2. Session stickiness directs user requests to the same server. 3. Centralized session storage uses independent servers such as Redis to store session data to ensure data sharing.

Sessionlockingisatechniqueusedtoensureauser'ssessionremainsexclusivetooneuseratatime.Itiscrucialforpreventingdatacorruptionandsecuritybreachesinmulti-userapplications.Sessionlockingisimplementedusingserver-sidelockingmechanisms,suchasReentrantLockinJ

Alternatives to PHP sessions include Cookies, Token-based Authentication, Database-based Sessions, and Redis/Memcached. 1.Cookies manage sessions by storing data on the client, which is simple but low in security. 2.Token-based Authentication uses tokens to verify users, which is highly secure but requires additional logic. 3.Database-basedSessions stores data in the database, which has good scalability but may affect performance. 4. Redis/Memcached uses distributed cache to improve performance and scalability, but requires additional matching

Sessionhijacking refers to an attacker impersonating a user by obtaining the user's sessionID. Prevention methods include: 1) encrypting communication using HTTPS; 2) verifying the source of the sessionID; 3) using a secure sessionID generation algorithm; 4) regularly updating the sessionID.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Dreamweaver CS6
Visual web development tools

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

Atom editor mac version download
The most popular open source editor

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.
