您的位置:首页 > 编程语言 > PHP开发

PHP基础篇----笔记-course7时间日期

2018-03-17 15:54 162 查看

                                       第七章

时间日期:在程序开发中发挥着重要的作用。
数据的存储和显示都需要时间。
在PHP中提供了一系列的内置的时间和日期函数库,
这些函数可以在程序运行时获取所在服务器端的日期和时间,也可以进行格式转换
例如:日期格式-》时间戳
(一)UNIX时间戳:
大多数计算机语言中用来表示时间和日期的一种紧凑简洁的方式。它代表的是从1970年1月1日到当前所经过的《秒数》
注意:未来的时间戳大于现在
(二)PHP中常用的时间日期函数
时区:在PHP中使用内置日期时间函数时,必须设置默认时区,否则会有警告
/**
 *  设定用于一个脚本中所有日期时间函数的默认时区
 *  支持的时区:Asia/Shanghai
 *  东八区:PRC,获取到北京时间
 */
date_default_timezone_set('PRC');//将当前脚本的默认时区设为东八区
date_default_timezone_set('Asia/Shanghai');
/**
 * 获取系统当前所在的时区
 */
echo date_default_timezone_get();
1.mktime($hour,$minute,$second,$month,$day,$year)取得一个日期的 Unix 时间戳
 (1)在PHP5.1之前,当 mktime()函数没有任何参数时,会返回当前的时间戳, 在之后,若没有参数,则会报错。提示使用time()函数来获取当前的时间戳
 (2)该函数返回值是时间戳
返回当前PHP环境的详细信息
echo phpinfo();
2.strtotime('')
(1)可以使用英语的自然语言来创建某个时刻的时间戳
返回值是时间戳
(2)补充:strtotime()参数可以是日期格式
$endtime=strtotime('2017-10-29 11:30:00');
echo strtotime('now')."<br/>";
echo strtotime('+1 day')."<br/>";
echo strtotime('last month');
3.date($format,$timestamp=null)将时间戳转换为更易读懂的日期时间格式
 * $format参数必须的,它规定了如何格式化日期和时间
 * Y:表示年(四位数)
 * m:表示月份(两位数01-12)
 * d:表示月份中的某一天(两位数01-31)
 * l:L的小写字母,表示周里的某天(星期几)
 * h:表示小时(两位数01-12),12小时制
 * H:表示小时,24小时制
 * i:表示分钟
 * s:表示秒(00-59<
c928
span style="font-family:'宋体';">)

 * a:表示小写的午前和午后(am和pm),大写的A表示(AM和PM)
 * 分隔符,比如"/"、"-"、"."
 * 返回值是日期时间格式
echodate("Y-m-d空格h:i:s",strtotime('now'))."<br/>";
4.getdate($timestamp=null)函数
 (1)返回当前本地时间和日期的信息
 (2)返回值是数组
print_r(getdate(1509155660));
/**
 * 向下取整(省略小数位)
 */
echo floor(3.6)."<br/>";
/**
 * 向上取整
 */
echo ceil(3.1);
<meta http-equiv="refresh" content="1">
                  验证码
(1)PHP手册目录-函数参考-图像生成和处理-GD
《细说PHP》第16章P386页经典验证码案例
(2)GD库:Graphic Device图像工具库。是PHP处理图形的扩展库
(3)GD库中提供了一系列用来处理图片的API(Application Programming Interface)
(4)使用GD库可以用来生成和处理图片
今天的任务:使用GD库来生成一个验证码图片
第一步:创建一张画布
/**
 * imagecreate($width, $height)函数:
 */
$img=imagecreate(120, 40);
补充
/**
 * rand($min, $max)函数:随机生成$min-$max之间的数
 */
第二步:给画布填充颜色
imagecolorallocate($img,rand(0,255),rand(0,255), rand(0,255));
第三步:在验证码上生成字符
/**
 * imagestring($image, $font, $x, $y, $string, $color)函数:
 * 将字符绘制在图像上
 * 如果 参数font  是 1,2,3,4 或 5,则使用内置字体大小。
 */
使用session技术将随机的验证码字符存放在服务器端
附加步骤:添加干扰素
/**
 * imagesetpixel($image,$x,$y,$color)函数:绘制一个像素
 * $image-图片资源
 * $x-点的横坐标
 * $y-点的纵坐标
 * $color-点的颜色
 */
第四步:输出图像
imagepng($img);//以 PNG 格式将图像输出到浏览器或文件
 
(1)会话控制:当用户登录某个网站时,可能会浏览多个网页,
(2)会话控制可以实现在不同的页面切换时,记录当前用户的信息,保证用户访问到的是自己的信息
常用的三种会话控制方式:
(1)使用header()函数在URL后面以?追加参数的形式
(2)cookie技术:将用户的状态信息存放在客户端
(3)session技术:将用户的状态信息存放在服务器端
session使用时:注意:必须要session_start()函数开启!!!,
网站中的任何一个页面都可以使用
session创建:$_SESSION预定义数组
session获取:$_SESSION['索引'
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: