promotion image of download ymail app
Promoted
匿名
Lv 7
匿名 asked in 電腦與網際網路程式設計 · 1 decade ago

用PHP怎麼寫讀取伺服器的時間、日期及顯示?(20點)

用PHP怎麼寫讀取伺服器的時間、日期及顯示?例如﹕程式一﹕我輸入了資料後,想系統自動將當時伺服器的時間及日期輸入到mysql中,            程式二﹕並且每次到某頁時,此頁可以顯示這時間及日期,                            以及每一次瀏覽時,這時間及日期的顯示是減去現在伺服器的時間及日期。我要的是兩個php程式,請大大幫我這個忙﹗

3 Answers

Rating
  • 1 decade ago
    Favorite Answer

    程式一:原則上,在mysql新增一個欄位屬性為timestamp,這樣一來mysql就會將輸出此筆資料當時的時間輸入此欄位。程式二:取得現在時間的php語法:date(),可以搭配mktime來處理時間相減。示範程式碼如下:<?mysql_pconnect("localhost","xxx","")or die("host fail");mysql_select_db("comic")or die("mysql fail");$sql=mysql_query("select * from comic_member")or die("query die");while($row=mysql_fetch_object($sql)){ $datetime=preg_split("/\s/",$row->last_time); //將時間使用空白拆開 $date=preg_split("/-/",$datetime[0]); //將上式的時間使用“-“拆開 $time=preg_split("/:/",$datetime[1]); //將上式的時間使用“:“拆開  $day_1=mktime($time[0],$time[1],$time[2],$date[1],$date[2],$date[0]); //使用上式拆開的陣列代入mktime $day_2=mktime(date("H"),date("i"),date("s"),date("m"),date("d"),date("Y"));  //使用現在時間代入mktime  $minus=$day_2-$day_1; //$minus單位為秒。  $num=60*60*24;  //下方為計算時間差 $realday=floor($minus/$num); echo $realday.'天又';  $num_2=($minus-($realday*$num)); $realhour=floor($num_2/60/60); echo $realhour.'時';  $num_3=($num_2-($realhour*60*60)); $realmin=floor($num_3/60); echo $realmin.'分';  $num_4=($num_3-($realmin*60)); echo $num_4.'秒';}?>

    Source(s): 自己
    • Commenter avatarLogin to reply the answers
  • 1 decade ago

    1. 取得系統日期可用 date("Ymd", time()); 若要到時間可用date("Ymd H:I:s", time());即可.. mktime 是製作timestamp, 也就是說把已知的日期時間, 轉成總秒數....

    2.這時就要用mktime來作了, mktike的使用方法是 mktime(時,分,秒,月,日年), 然後相減即可得相差的秒數, 再來就看您要如何顯示了.

    這樣的提示應該很明顯了吧, 加油喲....

    Source(s): me
    • Commenter avatarLogin to reply the answers
  • 1 decade ago

    要取得系統(伺服器)目前的時間及日期,可使用 mktime 函式,若要輸入到 mysql 資料庫裡,則要把此 timestamp 轉為資料庫可接受的日期字串格式,我當常用 date("Y/m/d H:i:s", mktime()) 這樣的語法來轉換。

    而由資料庫中取出日期格式時,因為 PHP 會把取出的欄位值視為字串來處理,所以若要讓取出的資料可以用 PHP 的日期格式來運算,則要使用 strtotime 這個函式將字串轉為日期格式,最後,直接做日期的相減即可。

    詳細的程式語法就不詳細寫出,希望以上的說明能對你有所幫助。

    • Commenter avatarLogin to reply the answers
Still have questions? Get your answers by asking now.