一、时间函数
UTC世界统一时间,世界标准时间
北京时间:东八区UTC+8
获取时区:date_default_timezone_get();
设置时区:date_default_timezone_set();
UTC , PRC(Peoples Republic of China) , Asia/chongqing , Asia/shanghai
进入服务器的PHP.ini文件 修改date.timezone = PRC 就可以将默认时区改为中国
也可以在脚本文件中直接使用date_default_timezone_set设置,但是仅仅在本文件中生效
1、UNIX时间戳(timestamp)
1970年1月1日00:00:00到当前时间的秒数
PHP设置内置函数 time()来获取服务器的当前时间戳
2、php时间函数
date()函数 获取当前的日期
语法:
date(时间格式,规定时间戳[默认是当前的时间])
#获取时间
p(date("y-m-d h:i:s"));
//如果书写第二个参数就是返回时间戳所在的时间
p(date("y-m-d h:i:s",1726351542));
时间参数:
a : am || pm
A : AM || PM
d :几日,2位数字,如果不足两位,补0,前边补0,eg:01,31
D :星期几,三个字母,eg:Fri
F :月份,英文全名,eg:January
h : 12小时制的小时,01-12
H : 24时小时,00-23
g : 12小时制的小时,不足两位不补0,1-12
G : 24时小时,0-23,不足两位不补0
i :分钟,00-59
j :几日,两位数字, 不足两位不补0,0-31
l :星期几,英文全称,eg:Friday
m :月份,2位,不足两位补01-12
M:月份,三个英文字母,Jan、May
n :月份,2位数字,不足两位不补0,1-12
s :秒,00-59
S:字尾加英文序数,两位英文字母,th、nd
t :月份的天数,28,30,31
U :总秒数
w :数字型的星期几,eg:0-6(星期日-星期六)
Y :年,四位,2018
y :年,两位,18
z :今天是一年中的第几天,0-365
3、根据日期获取时间戳
strtotime()函数,可以将日期转为时间戳
语法:
p(strtotime("2018-5-15 12:12:12"));
p(strtotime("2018-5-15"));
4、获取时间戳和微秒数
1s = 1000ms 1ms = 1000μm(微秒)
1s = 1000000μm
microtime()获取时间戳和微秒数
语法:
p(microtime()); //string(21) "0.74171500 1526353571"
p(microtime(true)); //float(1526353571.7417)
5、获取时间数组
getdate()函数,用于获取当前时间或某个时间戳的时间数组
语法:
p(getdate());
p(getdate(1726351542));
6、利用时间函数编写一个test函数,计算某一个函数的执行时间
function tt() {
$a = 2;
for($i = 0;$i < 9999999;$i++){
$+=$i;
}
}
function test($fun){
//计算fun这个函数的执行时间
}
test("tt");
二、php的数学函数
js中使用Math对象,调用数学方法
php中直接使用数学函数,进行数学计算
ceil()计算大于指定数的最小整数(向上取整),返回一个float类型数字
floor()计算小于指定数的最大整数(向下取整),返回一个float类型数字
round()四舍五入,返回float类型
max()找出最大值
min()找出最小值
mt_rand(min,max)生成min-max之间的随机数
pow(num,mi)计算次方,计算num的mi次方 幂运算
三、php字符串
php中的字符串有三种定义方式:
1)单引号
2)双引号
3)Heredoc(界定符模式)形式
当字符串中需要双引号时:
$str = '你是个"狗"';
$str = "你是个\"狗\"";
双引号与单引号的区别:
当双引号中包含变量时,变量会与其中的其他内容链接在一起,按照变量的内容输出
当单引号中包含变量时,变量名字会被认为是字符串输出
Heredoc形式定义字符串:
使用字符串的界定符表示界定符( <<< ),在<<<后边提供一个标识,然后书写字符串,最后使用标识结束
语法:
$str = <<<str
我爱吃苹果,啦啦啦
你好
str;
用途:经常被用来输出大量的html和JavaScript代码时使用
注:
<<<后边的标识符,可以使用任何合法的字符串作为标识,但是结尾处的标识必须和开始的一样,开头的标识后边不能跟任何的字符,结尾的一行必须另起一行,并且这一行除了标识符加分号之外不能有其他字符
php字符串连接
.用于连接两个字符串
php中字符串操作:
如果是双引号的字符串:
除了可以直接输出其中变量,还可以使用{}输出变量值
trim(str):
删除字符串首尾空白字符
ltrim(str):
删除开头的空白
rtrim(str):
删除结尾的空白
strlen(str):
获取字符串长度
mb_strlen(str,编码):
获取字符串长度,可选编码方式
strtolower(str):
字符串全部转为小写
strtoupper(str);
字符串全部转为大写
ucfirst(str):
将字符串首字母变为大写
ucwords(str):
将字符串中每个单词的首字母变大写
explode(str1,str2):
将str2按照str1的内容拆分为一个数组
implode(str1,arr1):
将数组arr1按照str1的规则拼接成一个字符串
substr(str,int start,int [length]):
截取字符串str,从start开始,截取length个,如果str是负数,就从字符串尾部开始截取
mb_substr(str,int start,int[length],编码):
截取字符串,编码方式可以是:utf-8、gbk、gb2312
注:系统默认不支持mb_substr(),可以在php.ini 文件中查找mbstring.dll 找到;extension=php_mbstring.dll 前边的;去掉
strchr(str1,str2):
将str1从前边开始str2的位置开始截取到最后,
strchr("www.baidu.com","c")
strrchr(str1,str2):
将str1从后边开始str2的位置开始截取到最后
strpos(str1,str2):
从str1中查找str2第一次出现的位置
str_replace("str1",str2,$a,$con):
参数1:目标参数
参数2:需要替换的字符串成
参数3:执行替换的内容(数组或字符串)
参数4:执行替换发生的次数
解释:要将$a中的str1换成str2,换$con次
str_ireplace("str1",str2,$a,$con):
用法与str_replace一样,但是不区分大小写
md5():
返回加密字符串,不可逆转
urlencode():
对url进行encode加密
原理是:将特殊字符或中文字符转换为16进制,然后在每个字符前边加一个标识符(%),js中的URL编码
urldecode():
对使用urlencode编码的url进行解码
__FIEL__:
是一个系统常量,可以获取当前文件路径