# 在CodeArts TestPlan中调用时间戳转日期函数
#### 函数名
$timestamp_format(String A, String B)
 #### 参数说明
- String A：要转化的时间戳，20位以内的纯数字串，也可使用内置获取当前时间戳函数$timestamp()。
- String B：可以由[表1]中的英文字母组成，最大长度为100。
   表1字母参数类型 
  | 字母  | 日期或时间元素                    | 参数类型  | 示例            |
  |:---|:---|:---|:---|
  | G   | Era 标志符                   | 文本  | AD            |
  | y  | 年                            | 年份   | 1996；96    |
  | M   | 年中的月份                       | 月份  | July; Jul; 07 |
  | w  | 年中的周数                       | 数字     | 27             |
  | W    | 月份中的周数                       | 数字    | 2             |
  | D   | 年中的第几天                     | 数字    | 189           |
  | d   | 月份中的第几天                     | 数字    | 10            |
  | F    | 月份中的第几个星期                  | 数字    | 2            |
  | E     | 星期中的某天                      | 文本     | Tuesday; Tue  |
  | a   | Am/pm 标记                   | 文本   | PM           |
  | H  | 一天中的小时数（0-23）               | 数字  | 0             |
  | k   | 一天中的小时数（1-24）             | 数字    | 24         |
  | K   | am(中午)/pm（下午） 中的小时数（0-11）   | 数字  | 0             |
  | h | am(中午)/pm（下午） 中的小时数（1-12） | 数字  | 12         |
  | m   | 小时中的分钟数                   | 数字   | 30          |
  | s   | 分钟中的秒数                     | 数字 | 55             |
  | S  | 毫秒数                          | 数字   | 978          |
  | z   | 时区缩写名称                      | 文本     | PST;EST        |
  | Z    | 时区偏移量                     | 文本    | +800；-0530  |
     
  ![](https://support.huaweicloud.com/usermanual-testman/public_sys-resources/note_3.0-zh-cn.png)
  1. 各字母与其代表的含义一一对应，请注意大小写格式。
  
  2. H、m、s中若有一个为0位时，其它两个也必须为0位。
   
  日期时间值中，连接符允许使用空格，"-"、"/"、":"，也可以不使用连接符，且不能含转义连接符，比如"\\n"。例如如下常用格式（包括但不限于）：
  - yyyy-MM-dd HH:mm:ss SSS
  
  - yyyy-MM-dd HH:mm:ss
  
  - yyyy-MM-dd HH:mm
  
  - yyyy-MM-dd HH
  
  - yyyy-MM-dd
  
  - yyyy-MM
  
  - yyyy
  
  - yy
  
  - MM-dd HH
  
  - MM-dd
  
  - MM
  
  - dd
  
  - HH:mm:ss SSS
  
  - HH:mm:ss
  
  - HH:mm
  
  - HH
  
  - mm
  
  - mm:ss
  
  - ss
  
  - SSS
  
  
  
  
 
#### 功能说明
实现将时间戳转化成对应格式的日期。时间戳是指从格林威治时间1970年01月01日00时00分00秒（即北京时间1970年01月01日08时00分00秒）起到指定时间的总毫秒数。
函数中的参数A支持以下几种类型：
- 符合[参数说明]格式的日期时间值
- 环境参数
- 局部参数
- 其它内置函数
函数中的参数B支持以下几种类型：
- 符合[参数说明]格式的日期时间值
- 环境参数
- 局部参数
- 其它内置函数
 
#### 使用场景
接口自动化用例中支持在以下场景中使用时间戳转日期函数：
- 请求url路径
- 请求头
- 请求体
- 检查点属性
- if判断
- for循环中断条件
 
#### 示例
- 请求url路径 如下图所示，请求url路径中参数"date"的值为时间戳转日期函数，函数中的参数A为内置获取当前时间戳函数"$timestamp()"，获取当前时间戳内置函数的使用方式请参考[在CodeArts TestPlan中调用获取当前时间戳函数](https://support.huaweicloud.com/usermanual-testman/cloudtest_01_0068.html)，参数B为"yyyy-MM-dd HH:mm:ss"。
  ![](https://support.huaweicloud.com/usermanual-testman/zh-cn_image_0000001979423043.png "点击放大")
  
  
- 请求头 如下图所示，请求头中参数"date"的值为时间戳转日期函数，函数中的参数A为环境参数"date"，参数B为"yyyyMMddHHmmss"。环境参数的设置方式请参考[设置CodeArts TestPlan接口脚本的环境参数](https://support.huaweicloud.com/usermanual-testman/cloudtest_01_0052.html)。
  ![](https://support.huaweicloud.com/usermanual-testman/zh-cn_image_0000001949303630.png "点击放大")
  
  
- 请求体 如下图所示，请求体中应用了时间戳转日期函数，函数中的参数A为"123456789"，参数B为"yyyyMMddHHmmssSSS"。
  ![](https://support.huaweicloud.com/usermanual-testman/zh-cn_image_0000001979263193.png "点击放大")
  
- 检查点属性 如下图所示，检查点属性"result"的目标值为时间戳转日期函数，函数中的参数A为内置获取当前时间戳函数"$timestamp()"，参数B为"MM/dd/yyyy HH/mm/ss"。
  ![](https://support.huaweicloud.com/usermanual-testman/zh-cn_image_0000001949303634.png "点击放大")
  
  
- if判断 如下图所示，if判断的目标值为时间戳转日期函数，函数中的参数A为内置获取当前时间戳函数"$timestamp()"，参数B为"MM/d/yyyy H/mm/ss SSS"。
  ![](https://support.huaweicloud.com/usermanual-testman/zh-cn_image_0000001979263197.png "点击放大")
  
  
- for循环中断条件 如下图所示，for循环中断条件的目标值为时间戳转日期函数，函数中的参数A为内置获取当前时间戳函数"$timestamp()"，参数B为"yyyyMMdd SSS"。
  ![](https://support.huaweicloud.com/usermanual-testman/zh-cn_image_0000001979423055.png "点击放大")
  
  
 
