在调用讯飞语音合成(流式版)接口时,它要求传入date参数为GMT时间,类似这样“Thu, 01 Aug 2019 01:53:21 GMT”。

使用它默认的demo测试时,发现一直提示401 Unauthorized错误,官方论坛说明是认证签名错误。

官方提供的PHP版demo中,其中获取GMT时间是这样的:


$date = gmstrftime("%a, %d %b %Y %T %Z", time());

一步步的检查发现签名串中的date是空值,但看上去代码并没有错误,单独测试这个gmstrftime函数,返回false,让其它小伙伴测试,也能正常返回时间戳,很是费解。

再经过无数次测试后,发现在加入%T参数时,函数会返回false。重新查看手册,其中有说明此函数与strftime函数行为类似,只是返回了GMT时间,所以再次去查strftime的相关说明:

可能不是所有的转换标记都被 C 库文件支持,这种情况下 PHP 的 strftime() 也不支持。此外,不是所有的平台都支持负的时间戳,因此日期的范围可能限定在不早于 Unix 纪元。这意味着例如 %e, %T,%R 和 %D(可能更多)以及早于 Jan 1, 1970 的时间在 Windows,一些 Linux 发行版本,以及其它几个操作系统中无效。

明白了,原来Windows下并不支持%T参数,所以删除%T后手动拼接字符串,或像我改用了gmdate函数:


$date = gmdate("D, d M Y H:i:s")." GMT";

即可解决。

PHP在Windows环境下获取GMT时间相关推荐

  1. C++在linux环境下获取毫秒、微妙级别时间

                    C++在linux环境下获取毫秒.微妙级别时间 一.时间单位简介:     1秒  = 1000毫秒     1秒  = 1000000微秒     1秒  = 100 ...

  2. Android 源码获取-----在Windows环境下通过Git得到Android源代码

    在学习Android的过程中,深入其源代码研究对我们来说是非常重要的,这里将介绍如何通过在Windows环境下使用Git来得到我们的Android源代码. 1.首先确保你电脑上安装了Git,这个通过  ...

  3. java 内存映射文件进程间通讯_[转]Windows环境下利用“共享内存”实现进程间通信的C/C++代码---利用CreateFileMapping和MapViewOfFile...

    进程间的通信方式有很多种, 上次我们说了最傻瓜的"共享外存/文件"的方法. 那么, 在本文中, 我们即将学习"共享内存"的方式实现进程间的通信, 这是IPC最快 ...

  4. Windows环境下文件的彻底删除与恢复,推荐几个工具(整理)

    1. 背景 在Windows(从XP到Win7)中删除文件时,无论是Delete或者是Shift+Delete,都不能真正的删除文件,它做的事情只是从文件分配表中删除了该文件的信息,而并未将文件从存储 ...

  5. 如何在Windows环境下的VS中安装使用Google Protobuf完成SOCKET通信

    http://blog.csdn.net/whuancai/article/details/11994341 如何在Windows环境下的VS中安装使用Google Protobuf完成SOCKET通 ...

  6. Windows环境下通过lynx查看隐藏链接识别黑链方法

    最近看了好多关于lynx相关的文章,通俗一点lynx就是个文本浏览器,一个和搜索引擎爬虫有点类似的工具,通过这个工具可以非常方便的实现一些辅助SEO的效果,今天小编主要分享一下在windows环境下如 ...

  7. Windows环境下32位汇编语言程序设计(典藏版)(含CD光盘1张)

    Windows环境下32位汇编语言程序设计(典藏版)(含CD光盘1张)(畅销10年,经典再现!) 罗云彬 著 ISBN 978-7-121-20759-4 2013年7月出版 定价:99.00元 75 ...

  8. windows环境下安装RabbitMQ(超详细)

    windows环境下安装RabbitMQ(超详细) 记录RabbitMQ安装过程,欢迎大家和我交流.(安装过程中遇到的问题也有总结哈,请查看) RabbitMq简介 安装准备工具 安装步骤(图文) 安 ...

  9. 琢石成器――windows环境下32位汇编语言程序设计(第三版)笔记

    琢石成器――windows环境下32位汇编语言程序设计(第三版)笔记 2011年12月20日 基础篇 第1章 背景知识 1 1.1 Win32的软硬件平台 1.1.1 80x86系列处理器简史 1.1 ...

最新文章

  1. django+mysql 配置一系列问题
  2. 2014编程之美热身赛 - 传话游戏
  3. 开放下载!《阿里云实时数仓Hologres最佳实践合集》
  4. svn 合并和树冲突
  5. 基于JAVA+SpringMVC+Mybatis+MYSQL的个人记账管理系统
  6. 数据埋点与设备指纹/设备反欺诈的区别与联系是什么?
  7. Oracle 11g ora 15018,OracleASM错误之--ORA-15031、ORA-15014
  8. 如何在没有电脑的情#况下用安卓手机制作windows pe启动盘
  9. 李子奈《计量经济学》第四版笔记和课后答案
  10. 数据结构Status
  11. 4152: [AMPPZ2014]The Captain
  12. 【持续更新】Pun多人在线游戏开发教程
  13. 【苹果相册推送位置推送iMessage】软件安装TestFlight计划的信息
  14. Flink 累加器Accumulator
  15. 浏览器提示代理服务器出现问题,或则地址有误
  16. golang-内存管理-GC回收
  17. U 需要知道的反射知识 -- 大白话
  18. python3.6实现Softmax Regression测试训练模型(可视化)机器学习算法(赵志勇)学习笔记
  19. h5怎么获取微信用户openId,h5如何获取微信用户openId
  20. nodejs MVC框架:Adonisjs框架入门-001概述

热门文章

  1. c #include如何找到文件_如何用C编写自己的头文件?
  2. 3d饼图 vue_在Vue中如何使用highCharts绘制3d饼图
  3. Python学习:numpy的使用技巧和注意
  4. CLR查找和加载程序集的方式(二) 流程图
  5. Java基础知识强化26:Object类之hashCode()方法、getClass()方法
  6. 使用Ajax的Time实现倒计时功能
  7. Sizzle系列之 选择元素
  8. WindowsPhone 7.8 Tiles 1 : WideTile
  9. 6条策略提高mysql查询速度 潇湘博客
  10. 8.7 使用索引-notes