Date/Time 函数允许您从 PHP 脚本运行的服务器上获取日期和时间。您可以使用 Date/Time 函数通过不同的方式来格式化日期和时间。
注释:这些函数依赖于服务器的本地设置。使用这些函数时请记住要考虑夏令时和闰年。
PHP Date/Time 函数是PHP 核心的组成部分。无需安装即可使用这些函数。
Date/Time 函数的行为受到 php.ini 中设置的影响:
| 名称 | 描述 | 默认 | PHP 版本 |
|---|---|---|---|
| date.timezone | 规定默认时区(所有的 Date/Time 函数使用该选项) | "" | PHP 5.1 |
| date.default_latitude | 规定默认纬度(date_sunrise() 和 date_sunset() 使用该选项) | "31.7667" | PHP 5.0 |
| date.default_longitude | 规定默认经度(date_sunrise() 和 date_sunset() 使用该选项) | "35.2333" | PHP 5.0 |
| date.sunrise_zenith | 规定默认日出天顶(date_sunrise() 和 date_sunset() 使用该选项) | "90.83" | PHP 5.0 |
| date.sunset_zenith | 规定默认日落天顶(date_sunrise() 和 date_sunset() 使用该选项) | "90.83" | PHP 5.0 |
| 函数 | 描述 |
|---|---|
| checkdate() | 验证格利高里日期。 |
| date_add() | 添加日、月、年、时、分和秒到一个日期。 |
| date_create_from_format() | 返回一个根据指定格式进行格式化的新的 DateTime 对象。 |
| date_create() | 返回一个新的 DateTime 对象。 |
| date_date_set() | 设置一个新的日期。 |
| date_default_timezone_get() | 返回默认时区,被所有的 Date/Time 函数使用。 |
| date_default_timezone_set() | 设置默认时区,被所有的 Date/Time 函数使用。 |
| date_diff() | 返回两个日期间的差值。 |
| date_format() | 返回根据指定格式进行格式化的日期。 |
| date_get_last_errors() | 返回日期字符串中的警告/错误。 |
| date_interval_create_from_date_string() | 从字符串的相关部分建立一个 DateInterval。 |
| date_interval_format() | 格式化时间间隔。 |
| date_isodate_set() | 设置 ISO 日期。 |
| date_modify() | 修改时间戳。 |
| date_offset_get() | 返回时区偏移。 |
| date_parse_from_format() | 根据指定的格式返回一个带有指定日期的详细信息的关联数组。 |
| date_parse() | 返回一个带有指定日期的详细信息的关联数组。 |
| date_sub() | 从指定日期减去日、月、年、时、分和秒。 |
| date_sun_info() | 返回一个包含有关指定日期与地点的日出/日落和黄昏开始/黄昏结束的信息的数组。 |
| date_sunrise() | 返回指定日期与地点的日出时间。 |
| date_sunset() | 返回指定日期与地点的日落时间。 |
| date_time_set() | 设置时间。 |
| date_timestamp_get() | 返回 Unix 时间戳。 |
| date_timestamp_set() | 设置基于 Unix 时间戳的日期和时间。 |
| date_timezone_get() | 返回给定 DateTime 对象的时区。 |
| date_timezone_set() | 设置 DateTime 对象的时区。 |
| date() | 格式化本地日期和时间。 |
| getdate() | 返回某个时间戳或者当前本地的日期/时间的日期/时间信息。 |
| gettimeofday() | 返回当前时间。 |
| gmdate() | 格式化 GMT/UTC 日期和时间。 |
| gmmktime() | 返回 GMT 日期的 UNIX 时间戳。 |
| gmstrftime() | 根据区域设置格式化 GMT/UTC 日期和时间。 |
| idate() | 格式化本地时间/日期为整数。 |
| localtime() | 返回本地时间。 |
| microtime() | 返回当前 Unix 时间戳的微秒数。 |
| mktime() | 返回一个日期的 Unix 时间戳。 |
| strftime() | 根据区域设置格式化本地时间/日期。 |
| strptime() | 解析由 strftime() 生成的时间/日期。 |
| strtotime() | 将任何英文文本的日期或时间描述解析为 Unix 时间戳。 |
| time() | 返回当前时间的 Unix 时间戳。 |
| timezone_abbreviations_list() | 返回包含夏令时、偏移量和时区名称的关联数组。 |
| timezone_identifiers_list() | 返回带有所有时区标识符的数值数组。 |
| timezone_location_get() | 返回指定时区的位置信息。 |
| timezone_name_from_ abbr() | 根据时区缩略语返回时区名称。 |
| timezone_name_get() | 返回时区的名称。 |
| timezone_offset_get() | 返回相对于 GMT 的时区偏移。 |
| timezone_open() | 创建一个新的 DateTimeZone 对象。 |
| timezone_transitions_get() | 返回时区的所有转换。 |
| timezone_version_get() | 返回时区数据库的版本。 |
| 常量 | 描述 |
|---|---|
| DATE_ATOM | Atom (例如:2005-08-15T16:13:03+0000) |
| DATE_COOKIE | HTTP Cookies (例如:Sun, 14 Aug 2005 16:13:03 UTC) |
| DATE_ISO8601 | ISO-8601 (例如:2005-08-14T16:13:03+0000) |
| DATE_RFC822 | RFC 822 (例如:Sun, 14 Aug 2005 16:13:03 UTC) |
| DATE_RFC850 | RFC 850 (例如:Sunday, 14-Aug-05 16:13:03 UTC) |
| DATE_RFC1036 | RFC 1036 (例如:Sunday, 14-Aug-05 16:13:03 UTC) |
| DATE_RFC1123 | RFC 1123 (例如:Sun, 14 Aug 2005 16:13:03 UTC) |
| DATE_RFC2822 | RFC 2822 (例如:Sun, 14 Aug 2005 16:13:03 +0000) |
| DATE_RSS | RSS (例如:Sun, 14 Aug 2005 16:13:03 UTC) |
| DATE_W3C | 万维网联盟 (例如:2005-08-14T16:13:03+0000) |
我想在一个没有Sass引擎的类中使用Sass颜色函数。我已经在项目中使用了sassgem,所以我认为搭载会像以下一样简单:classRectangleincludeSass::Script::FunctionsdefcolorSass::Script::Color.new([0x82,0x39,0x06])enddefrender#hamlengineexecutedwithcontextofself#sothatwithintemlateicouldcall#%stop{offset:'0%',stop:{color:lighten(color)}}endend更新:参见上面的#re
我想设置一个默认日期,例如实际日期,我该如何设置?还有如何在组合框中设置默认值顺便问一下,date_field_tag和date_field之间有什么区别? 最佳答案 试试这个:将默认日期作为第二个参数传递。youcorrectlysetthedefaultvalueofcomboboxasshowninyourquestion. 关于ruby-on-rails-date_field_tag,如何设置默认日期?[rails上的ruby],我们在StackOverflow上找到一个类似的问
我正在尝试用ruby中的gsub函数替换字符串中的某些单词,但有时效果很好,在某些情况下会出现此错误?这种格式有什么问题吗NoMethodError(undefinedmethod`gsub!'fornil:NilClass):模型.rbclassTest"replacethisID1",WAY=>"replacethisID2andID3",DELTA=>"replacethisID4"}end另一个模型.rbclassCheck 最佳答案 啊,我找到了!gsub!是一个非常奇怪的方法。首先,它替换了字符串,所以它实际上修改了
我有一些代码在几个不同的位置之一运行:作为具有调试输出的命令行工具,作为不接受任何输出的更大程序的一部分,以及在Rails环境中。有时我需要根据代码的位置对代码进行细微的更改,我意识到以下样式似乎可行:print"Testingnestedfunctionsdefined\n"CLI=trueifCLIdeftest_printprint"CommandLineVersion\n"endelsedeftest_printprint"ReleaseVersion\n"endendtest_print()这导致:TestingnestedfunctionsdefinedCommandLin
如何在Ruby中按名称传递函数?(我使用Ruby才几个小时,所以我还在想办法。)nums=[1,2,3,4]#Thisworks,butismoreverbosethanI'dlikenums.eachdo|i|putsiend#InJS,Icouldjustdosomethinglike:#nums.forEach(console.log)#InF#,itwouldbesomethinglike:#List.iternums(printf"%A")#InRuby,IwishIcoulddosomethinglike:nums.eachputs在Ruby中能不能做到类似的简洁?我可以只
说在前面这部分我本来是合为一篇来写的,因为目的是一样的,都是通过独立按键来控制LED闪灭本质上是起到开关的作用,即调用函数和中断函数。但是写一篇太累了,我还是决定分为两篇写,这篇是调用函数篇。在本篇中你主要看到这些东西!!!1.调用函数的方法(主要讲语法和格式)2.独立按键如何控制LED亮灭3.程序中的一些细节(软件消抖等)1.调用函数的方法思路还是比较清晰地,就是通过按下按键来控制LED闪灭,即每按下一次,LED取反一次。重要的是,把按键与LED联系在一起。我打算用K1来作为开关,看了一下开发板原理图,K1连接的是单片机的P31口,当按下K1时,P31是与GND相连的,也就是说,当我按下去时
我需要一个通过输入字符串进行计算的方法,像这样function="(a/b)*100"a=25b=50function.something>>50有什么方法吗? 最佳答案 您可以使用instance_eval:function="(a/b)*100"a=25.0b=50instance_evalfunction#=>50.0请注意,使用eval本质上是不安全的,尤其是当您使用外部输入时,因为它可能包含注入(inject)的恶意代码。另请注意,a设置为25.0而不是25,因为如果它是整数a/b将导致0(整数)。
无论时间在哪个时区表示,时区差异是否总是被忽略?直觉上,对于那些使用UTC+2的人来说,从EPOCH开始经过的秒数应该更高。然而,事实并非如此。 最佳答案 Epoch基于utc时区https://en.wikipedia.org/wiki/Unix_time它与您当前所在的时区无关。 关于ruby-Time.to_i是否总是以UTC返回自EPOCH以来的秒数?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.
我需要从json记录中获取一些值并像下面这样提取curr_json_doc['title']['genre'].map{|s|s['name']}.join(',')但对于某些记录,curr_json_doc['title']['genre']可以为空。所以我想对map和join()使用try函数。我试过如下curr_json_doc['title']['genre'].try(:map,{|s|s['name']}).try(:join,(','))但是没用。 最佳答案 你没有正确传递block。block被传递给参数括号外的方法
在这段Ruby代码中:ModuleMClassC当我尝试运行时出现“'M:Module'的未定义方法'helper'”错误c=M::C.new("world")c.work但直接从另一个类调用M::helper("world")工作正常。类不能调用在定义它们的同一模块中定义的模块函数吗?除了将类移出模块外,还有其他解决方法吗? 最佳答案 为了调用M::helper,你需要将它定义为defself.helper;结束为了进行比较,请查看以下修改后的代码段中的helper和helper2moduleMclassC