当前位置:首页 > PHP教程 > php日期 > 列表

利用php获取标准北京时间的方法

发布:smiling 来源: PHP粉丝网  添加日期:2024-09-26 20:36:58 浏览: 评论:0 

这篇文章主要介绍了如何利用php获取标准北京时间的方法,文中有详细的代码示例供大家参考,对大家的学习或工作有一定的帮助,需要的朋友可以参考下。

本文实例讲述了利用php获取标准北京时间的方法

首先,在PHP中可以使用date_default_timezone_set函数来设置时区,然后使用date函数来获取当前的时间。

为了获取标准北京时间,您需要将时区设置为Asia/Shanghai。

以下是一个PHP代码示例,用于获取标准北京时间:

  1. <?php 
  2.  
  3. date_default_timezone_set('Asia/Shanghai'); // 设置时区为北京时间 
  4.  
  5. echo date('Y-m-d H:i:s'); // 输出标准北京时间 
  6.  
  7. ?> 

这段代码将输出服务器当前的标准北京时间,格式为年-月-日 时:分:秒。

但是这种方法只能够识别本地设备的时间和时区,并不是标准的中国北京时间。

可以按照下面这种两种方法来调用标准北京时间

这段PHP代码主要通过www.bjtimes.cc的官网上获取标准的北京时间

可以通过这段代码定时获取北京时间,然后更新自己系统的标准时间。

  1. <?php  
  2.  
  3. $url = 'https://www.bjtimes.cc/get_bjtimes.php'; 
  4.  
  5. $ch = curl_init($url); 
  6.  
  7. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
  8.  
  9. $response = curl_exec($ch); 
  10.  
  11. if(curl_errno($ch)){ 
  12.  
  13.     echo 'cURL Error: ' . curl_error($ch); 
  14.  
  15. } 
  16.  
  17. curl_close($ch); 
  18.  
  19. $data = json_decode($response, true); 
  20.  
  21.    
  22.  
  23. if ($data && isset($data['bjtimes'])) { 
  24.  
  25.     $sysTime = $data['bjtimes']; 
  26.  
  27.     echo $sysTime; 
  28.  
  29. } else { 
  30.  
  31.     echo '同步国家授时中心时间失败…'; 
  32.  
  33. } 
  34.  
  35. ?> 
  36.  
  37. <?php 
  38.  
  39. $url = 'https://www.bjtimes.cc/get_bjtimes.php'; 
  40.  
  41. $ch = curl_init($url); 
  42.  
  43. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
  44.  
  45. curl_setopt($ch, CURLOPT_HEADER, true); 
  46.  
  47. $result = curl_exec($ch); 
  48.  
  49. $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); 
  50.  
  51. curl_close($ch); 
  52.  
  53.    
  54.  
  55. if ($http_code == 200) { 
  56.  
  57.     $header_size = curl_getinfo($ch, CURLINFO_HEADER_SIZE); 
  58.  
  59.     $headers = substr($result, 0, $header_size); 
  60.  
  61.     preg_match('/Last-Modified: (.*)\s/', $headers, $matches); 
  62.  
  63.     if (!emptyempty($matches[1])) { 
  64.  
  65.         $last_modified = strtotime($matches[1]); 
  66.  
  67.         echo 'Last Modified: ' . date('Y-m-d H:i:s', $last_modified); 
  68.  
  69.     } else { 
  70.  
  71.         echo 'Last Modified time not found'; 
  72.  
  73.     } 
  74.  
  75. } else { 
  76.  
  77.     echo 'Failed to open the URL'; 
  78.  
  79. } 
  80.  
  81. ?>

Tags: php获取标准北京时间

分享到: