PHP开发从入门到精通 袁鑫 第11章.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第11章 PHP中的主机信息获取 在PHP进行程序开发时,用户需要对自己所处主机的环境以及访问者的信息做一定的了解。比如,想要记录访问者的IP地址或者浏览器的类型、了解当前服务器的相关特征等,这些都属于主机信息。本章将详细介绍如何获取主机信息。 主机信息中少不了系统时间的获取,想要知道访问者于何时访问了你的程序,需要在程序中进行系统时间的获取,如用户注册与访问的时间、用户留言的时间等。本章详细讲解时间函数date()、time()、mktime()等函数的用法,并就如何计算两个时间之间的间隔进行讨论与分析,还对checkdate()函数、strtotime()函数以及getdate()函数进行简单介绍。 【例11-1】系统主机信息获取——$_SERVER[]的运用 用户对服务器信息的获取,可以直接通过访问根目录下的http://localhost/phpinfo.php文件来实现。在phpinfo.php文件中只有一行语句,即: ? phpinfo(); ? phpinfo()函数直接返回主机的全部信息。为了防止用户看到主机的相关安全信息,有些服务提供商将这个函数禁用了。 【例11-1】系统主机信息获取——$_SERVER[]的运用 若要在网页中对主机信息进行获取,需运用服务器变量$_SERVER。在第5章已经知道,$_SERVER是一个特殊的PHP预定义变量,它包含了主机提供的所有信息,在所有的脚本中都有效,称为超级全局变量(或“自动全局变量”)。要显示相关主机信息,只需按如下语法结构进行即可: $_SERVER[“主机信息”]; 这种$_SERVER变量出现在PHP 4.1.0及以后版本使用。之前的版本使用$HTTP_SERVER_VARS。 【例11-2】系统时间的获取——计算两个时间的间隔长度 在UNIX系统中保存当前日期和时间的方法为:保存格林威治标准时间从1970年1月1日0点起到当前时刻的秒数,以32位整数表示,其中1970年1月1日0点称为UNIX纪元。 虽然是UNIX时间戳,但是同样也可以在Windows下正常地运行,但要记住,UNIX时间戳在Windows下必须是正数。 若要将某一个时间与日期转变成UNIX时间戳,可以使用mktime()函数。 mktime()函数的相关语法如下: 格式如下: int mktime([int hour[,int minute[,int second[,int month[,int day[,int year[,int is_dst]]]]]]]) 说明:根据给出的参数返回 Unix 时间戳。时间戳是一个长整数,包含了从 Unix 纪元(January 1 1970 00:00:00 GMT)到给定时间的秒数。 函数中的七个参数均是可选的,若这7项参加有缺少,则自动判断从右向左省略,任何省略的参数会被设置成本地日期和时间的当前值。 【例11-2】系统时间的获取——计算两个时间的间隔长度 date()函数:对某一个日期或者时间进行格式化。 语法如下: string date (string 格式字符串 [, int 时间戳] ) date()函数有两个参数,第一个是格式字符串,第二个是UNIX时间戳。函数将返回将整数时间戳按照指定的格式字串而产生的字符串。如果没有给出时间戳则使用本地当前时间。换句话说,时间戳是可选的,默认值为 time()。要将字符串表达的时间转换成时间戳,可以使用 strtotime()与mktime()函数。此外一些数据库有一些函数将其时间格式转换成时间戳(如MySQL 的 UNIX_TIMESTAMP 函数)。 【例11-2】系统时间的获取——计算两个时间的间隔长度 time()函数:返回当前的 Unix 时间戳。 语法如下: int time ( void ) 返回自从 Unix 纪元(格林威治时间 1970 年 1 月 1 日 00:00:00)到当前时间的秒数。该函数没有任何参数。 有语句: echo time(); //以时间戳的形式显示当前时间 显示结果为: 1217837887 【例11-2】系统时间的获取——计算两个时间的间隔长度 计算两个时间之间的间隔长度。 从上面的mktime()与time()函数得到日期与时间的时间戳,也就是从 Unix 纪元(格林威治时间 1970 年 1 月 1 日 00:00:00)到指定时间的秒数。两个时间之间的差值结果当然也是秒数,那么,如何将秒数转化成具体的某年某月某日某小时某分钟某秒钟? 本例的以下代码将这个问题解决了: $day=floor(($final-$nowtime)/(60*60*24)); //天数 $hour=floor((($final-$nowt

文档评论(0)

118压缩包课件库 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档