最新更新 sitemap 网站制作设计本站搜索
网页设计
国外网站 韩国网站 个人主页 手提袋设计 CSS 网页特效 平面设计 网站设计 Flash CMS技巧 服装网站 php教程 photoshop 画册 服务器选用 数据库 Office
虚拟主机 域名注册 云主机 网页设计 客服QQ:8208442
当前位置:首页 > 编程开发 > php教程

php教程:用PEAR Date进行日期时间处理

日期:08-03    来源:中国设计秀    作者:cnwebshow.com

  PHP内置了日期和时间的处理函数, 这些设计使你很容易得得到您所需要的格式, 或者使用它进行演算或对用户进行显示。但是, 如果您会想做某事被复杂化, 有很多种方法的。o6r中国设计秀

  这是一个在网页中显示时间的简单例子。使用 PHP的date()函数可以读取服务器的时间和以一个具体格式显示时间。但如果您想显示时间在一个另外地点- 例如, 如果您的公司们于不同的国家,但您想从位于一个另外国家的服务器上想看到"家" 时间,而不是当地时间? 当然, 您必须计算出二个地方的时差然后执行一些日期算术调整为不同的时区。时差是很重要的, 您需要考虑到使用前一天新时间还是使用以后的时间, 记录结束这月和闰年限制。o6r中国设计秀

  和你想像的一样, 如果算术能迅速得到非常复杂的时区转换,何必要您手工做它。PHP 有自带的时区功能函数, 但这些不是特别直觉的,并且不太符合时间习惯。一个更快的选择使用PEAR日期处理功能来简单的对时区执行这些转换。o6r中国设计秀

  这个讲解将教您怎么用PEAR的日期功能来转换在时区之间转换时间。假设, 您已经运行了Apache 和 PHP 并且PEAR日期功能正确地被安装了。o6r中国设计秀

o6r中国设计秀
 开始o6r中国设计秀
  我们从基本开始- 创建和使用Data对象。创造一个PHP 脚本来运行以下代码:o6r中国设计秀

 例子Ao6r中国设计秀
<?phpo6r中国设计秀
//包括类o6r中国设计秀
include("Date.php");o6r中国设计秀

//初始化对象o6r中国设计秀
$d = new Date("2006-06-21 15:45:27");o6r中国设计秀

//检索日期o6r中国设计秀
echo $d->getdate();o6r中国设计秀
? >o6r中国设计秀

这相当简单- 包含类, 初始化一个 Date() 对象与日期/时间串, 和然后使用 getDate() 方法显示您插入的时间。下面是输出:o6r中国设计秀
2006-06-21 15:45:27o6r中国设计秀

  您若想要得到不同格式的日期呢? 如果格式依是标准的, 譬如ISO 格式, 简单地使用 getDate()加参数来完成就行了。o6r中国设计秀

 例子Bo6r中国设计秀
<?phpo6r中国设计秀
//包括类o6r中国设计秀
include("Date.php");o6r中国设计秀

//初始化对象o6r中国设计秀
$d = new Date("2006-06-21 15:45:27");o6r中国设计秀

//检索日期作为时间戳o6r中国设计秀
echo  $d->getdate(DATE_FORMAT_ISO_BASIC);o6r中国设计秀
? >o6r中国设计秀
这种情况下依照标准ISO 格式输出时间,结果如下。o6r中国设计秀
20060621T154527Zo6r中国设计秀

如果您会使用一个自已习惯的格式, 您可以使用 format() 方法。PHP 的 date() 函数一样, 这个方法接受表明的一系列的格式,这些格式用来指定怎么对日期进行格式化。 下面是一个例子:o6r中国设计秀

 例子Co6r中国设计秀
<?phpo6r中国设计秀
//包括类o6r中国设计秀
include("Date.php");o6r中国设计秀

//初始化对象o6r中国设计秀
$d = new Date("2006-06-21 15:45:27");o6r中国设计秀

//检索日期如同格式化的串o6r中国设计秀
echo $d->format("%A, %d %B %Y %T");o6r中国设计秀
? >o6r中国设计秀
输出结果如下:o6r中国设计秀

Wednesday, 21 June 2006 15:45:27o6r中国设计秀

  在时区之间转换o6r中国设计秀
  现您已掌握了一些基本的, 现在我们来谈论时区。一旦您使用一个 Date() 对象初始化, 转换从一个时区到另一个时区只需要简单的二步:o6r中国设计秀

1.告诉Date对象您从哪个时区转换, 使用 setTZByID() 方法。o6r中国设计秀
2.然后, 告诉Date对象您希望转换成哪个时区, 以 convertTZByID() 方法。o6r中国设计秀

 例子Do6r中国设计秀
<?phpo6r中国设计秀
//包括类o6r中国设计秀
include("Date.php");o6r中国设计秀

//初始化对象o6r中国设计秀
$d = new Date("2006-06-21 10:36:27");o6r中国设计秀

//设置要转换时区o6r中国设计秀
$d->settzbyid("GMT");o6r中国设计秀

//转换到设置的时区o6r中国设计秀
$d->converttzbyid("IST");o6r中国设计秀

//得到转换的日期/时间o6r中国设计秀
echo $d->format("%A, %d %B %Y %T");o6r中国设计秀
? >o6r中国设计秀

  在这个例子中, 我试图从格林威治标准时间(格林维志时间) 转换成印第安标准时间(IST) 。印度时间大约在格林威治时间5.5 小时之前, 为什么例子输出的结果是:o6r中国设计秀

Wednesday, 21 June 2006 16:06:27o6r中国设计秀
很简单, 不是吗? 下面是另外一个例子(例子E)将展示如果处理闰年和月。

本文引用地址:/bc/article_58246.html
网站地图 | 关于我们 | 联系我们 | 网站建设 | 广告服务 | 版权声明 | 免责声明