Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk melaksanakan undur dalam php
Cara melaksanakan kira detik dalam PHP: 1. Tetapkan zon masa melalui set_zon_masa_tanggal 2. Konfigurasikan tempoh masa aktiviti harian 3. Kira perbezaan masa antara pelayan dan klien 4. Melalui "fungsi GetRTime (){... }" kaedah untuk melaksanakan kira detik.
Persekitaran pengendalian artikel ini: sistem Windows 7, PHP versi 7.1, komputer DELL G3
Cara melaksanakan kira detik dalam php?
Penjelasan terperinci tentang cara melaksanakan fungsi kira detik masa nyata PHP
Spesifiknya adalah seperti berikut:
Dalam beberapa masa lalu hari, syarikat akan mempunyai fungsi membeli-belah masa terhad Ini adalah perlu untuk mencapai kira detik dan kira detik masa nyata
Keperluan:
1) Kira detik masa nyata. jam, minit dan saat mesti dipaparkan
2) Pelanggan menukar tarikh Masa tidak akan menjejaskan paparan biasa kira detik (iaitu, berdasarkan masa pelayan)
Dalam hakikatnya, ini mempunyai keperluan yang sama seperti fungsi had masa bagi banyak peperiksaan dan sistem lain.
Idea Penyelesaian:
1) Anda tidak boleh menggunakan ajax untuk mendapatkan masa pelayan setiap saat.
Jadi kira detik masa nyata mesti dilaksanakan dengan javascript Ini sangat mudah adalah untuk menyelesaikan kesan tarikh dan masa pelanggan yang diubah suai pada paparan kami.
Penyelesaian adalah untuk mengira perbezaan masa antara masa pelanggan dan masa pelayan Ini menyelesaikan masalah sepenuhnya
Dengan cara ini, anda hanya perlu menjalankan php sekali Masa kira detik masa nyata akan disegerakkan dengan masa pelayan
Secara teorinya ia disegerakkan, tetapi dalam ujian sebenar akan terdapat ralat selama 1 saat. (Alasan khusus adalah berkaitan dengan kelajuan Internet. Semakin cepat kelajuan Internet, semakin kecil ralat), tetapi ini tidak akan menjejaskan keperluan kami di atas
Contoh:<.>Kod:
Contoh 2:
<?php //php的时间是以秒算。js的时间以毫秒算 date_default_timezone_set("Asia/Hong_Kong");//地区 //配置每天的活动时间段 $starttimestr = "09:00:00"; $endtimestr = "18:30:00"; $starttime = strtotime($starttimestr); $endtime = strtotime($endtimestr); $nowtime = time(); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>PHP实时倒计时!</title> <script language="JavaScript"> <!-- // var EndTime=<?=$endtime*1000?>; var NowTime = new Date(); //计算出服务器和客户端的时间差。 var dTime = <?=$nowtime*1000?>-NowTime.getTime(); function GetRTime(){ var NowTime = new Date(); var nMS = EndTime - NowTime.getTime()-dTime; var nH=Math.floor(nMS/(1000*60*60)) % 24; var nM=Math.floor(nMS/(1000*60)) % 60; var nS=Math.floor(nMS/1000) % 60; document.getElementById("RemainH").innerHTML=nH; document.getElementById("RemainM").innerHTML=nM; document.getElementById("RemainS").innerHTML=nS; if(nMS>5*59*1000&&nMS<=5*60*1000) { alert("还有最后五分钟!"); } setTimeout("GetRTime()",1000); } window.onload=GetRTime; // --> </script> </head> <body> <h1><strong id="RemainH">XX</strong>:<strong id="RemainM">XX</strong>:<strong id="RemainS">XX</strong></h1> </body> </html>Mengubah suai beberapa pepijat di atasKod:
Contoh 3:
<?php //php的时间是以秒算。js的时间以毫秒算 date_default_timezone_set("Asia/Hong_Kong");//地区 //配置每天的活动时间段 $starttimestr = "09:00:00"; $endtimestr = "18:30:00"; $starttime = strtotime($starttimestr); $endtime = strtotime($endtimestr); $nowtime = time(); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>PHP实时倒计时!</title> <script language="JavaScript"> <!-- // var EndTime=<?=$endtime*1000?>; var NowTime = new Date(); //计算出服务器和客户端的时间差。 var dTime = NowTime.getTime()-<?=$nowtime*1000?>; var runtimes = 0; function GetRTime(){ var NowTime = new Date(); var dTimeNew = NowTime.getTime()-<?=$nowtime*1000?>; var dTimesM = Math.abs(Math.floor((dTimeNew-runtimes*1000-dTime)/1000));//客户端时间和服务器当前时间的差 if (dTimesM>1) {//如果用户修改了客户端时间,就重新load本页 window.location.reload(); } var nMS = EndTime - NowTime.getTime()+dTime; var nH=Math.floor(nMS/(1000*60*60)) % 24; var nM=Math.floor(nMS/(1000*60)) % 60; var nS=Math.floor(nMS/1000) % 60; document.getElementById("RemainH").innerHTML=nH; document.getElementById("RemainM").innerHTML=nM; document.getElementById("RemainS").innerHTML=nS; if(nMS>5*59*1000&&nMS<=5*60*1000) { alert("还有最后五分钟!"); } runtimes++; setTimeout("GetRTime()",1000); } window.onload=GetRTime; // --> </script> </head> <body> <h1><strong id="RemainH">XX</strong>:<strong id="RemainM">XX</strong>:<strong id="RemainS">XX</strong></h1> </body> </html>Ideanya berbeza, jauh lebih mudah.Kod:
Pembelajaran yang disyorkan: "
Tutorial Video PHP<?php //php的时间是以秒算。js的时间以毫秒算 date_default_timezone_set("Asia/Hong_Kong");//地区 //配置每天的活动时间段 $starttimestr = "09:00:00"; $endtimestr = "13:50:00"; $starttime = strtotime($starttimestr); $endtime = strtotime($endtimestr); $nowtime = time(); if ($nowtime<$starttime){ die("活动还没开始,活动时间是:{$starttimestr}至{$endtimestr}"); } $lefttime = $endtime-$nowtime; //实际剩下的时间(秒) ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>PHP实时倒计时!</title> <script language="JavaScript"> <!-- // var runtimes = 0; function GetRTime(){ var nMS = <?=$lefttime?>*1000-runtimes*1000; var nH=Math.floor(nMS/(1000*60*60))%24; var nM=Math.floor(nMS/(1000*60)) % 60; var nS=Math.floor(nMS/1000) % 60; document.getElementById("RemainH").innerHTML=nH; document.getElementById("RemainM").innerHTML=nM; document.getElementById("RemainS").innerHTML=nS; if(nMS>5*59*1000&&nMS<=5*60*1000) { alert("还有最后五分钟!"); } runtimes++; setTimeout("GetRTime()",1000); } window.onload=GetRTime; // --> </script> </head> <body> <h1><strong id="RemainH">XX</strong>:<strong id="RemainM">XX</strong>:<strong id="RemainS">XX</strong></h1> </body> </html>"
Atas ialah kandungan terperinci Bagaimana untuk melaksanakan undur dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!