六、PHP基础教程,PHP中常用系统函数

6.1数值进制转换
( ) 二转十
( ) 八转十
( ) 十六转十
(int ) 十进制转换为二进制
(int ) 十转八
(int ) 十转十六
( , int , int )
是要转换的数,是原进制,是转换后的进制 。如(’13’,10,2)相当于(13) 。
6.2科学计算
1、绝对值
abs(mixed )
返回的绝对值 。
2、三角函数
float tan(float arg) 正切
float sin(float arg) 正弦
float cos(float arg) 余弦
float atan(float arg) 反正切
float asin(float arg) 反正弦
float acos(float arg) 反余弦
float pi(void) 圆周率(或直接使用常量M_PI)
float (float ) 角度制转为弧度制(2=to)
float (float ) 弧度制转为角度制
3、指数运算
pow( base, exp)
base为底数,exp为幂 。而pow(2,4)相当于2^4 。
4、对数运算
float log(float arg [,float base])
arg为真数 , base为底数 。如log(5,2)就是以2为底的5的对数 。
5、开方运算
float sqrt(float arg)
返回arg的平方根 。
6.3 随机数
1、libcs随机数(传统)
int rand([int min, int max])
生成介于min和max之间的随机整数(包括min和max),如rand(1,3)就可能生成1、2、3这三种情况 。如果没有指定min和max , 则生成介于0和()之间的随机整数 。如果希望生成比()更大的随机数,请设置min和max 。
int (void)
返回rand()能取到的最大值,如在平台下是32768 。
2、()随机数(新兴 , 速度快)
int ([int min, int max])
生成介于min和max之间的随机整数(包括min和max),如rand(1,3)就可能生成1、2、3这三种情况 。如果没有指定min和max,则生成介于0和()之间的随机整数 。如果希望生成比()更大的随机数,请设置min和max 。
int (void)
返回()能取到的最大值 。
6.4四舍五入、取整和取余
float round(float val [,int ])
对val进行四舍五入,并根据确定保留小数点后几位 。如round(4.2)等于4;round(3.625,1)等于3.6 。
float floor(float value)
舍尾取整,如floor(3.99)等于3 。
float ceil(float value)
尽进取整,如ceil(3.01)等于4 。
float fmod(float x, float y)
浮点数的取余运算 , 如果x、y都是整数 , 则fmod(x,y)相当于x%y;如果x、y不都是整数,则按照浮点数的运算法则来取余 。如fmod(5,1.3)等于1.1,因为5=1.3*3+1.1 。
6.5比较大小
mixed max( arg1 , arg2 [,…])
mixed max(array )
返回最大值 。但要注意下面的用法:$val = max(array(2, 4, 8), array(2, 5, 7)),这样$val=array(2, 5, 7) 。因为如果操作数都是数字,PHP会逐个比较,一经比出,后面就忽略了 。
mixed min( arg1 , arg2 [,…])
mixed min(array )
返回最小值 。注意事项和max()一样 。
6.6判断数值是否合法
bool (float val)
判断val是否未超过界限(即系统所能表达的最大值) 。
bool (float val)
判断一个值是否为有限值 。如果是有限值,则返回True;如果不是 , 则不返回任何值 。如果该数值超过了PHP允许的浮点数值范围之内,那么它就是无限值 。
bool (float val)
判断val是否不存在,如(acos(1.01))将返回true 。
6.7时间和日期函数
首先让我们认识两个概念,Unix纪元(Unix Epoch)和时间戳() 。前者指的是格林威治时间1970年1月1日零点( 1 1970 00:00:00 GMT),后者则是从Unix纪元开始计数的秒数,从而表示具体时间,因此也可以是负数字 。如时间戳若等于-86400 , 则其表示的时间是格林威治时间1969年12月31日零点( 31 1969 00:00:00 GMT) , 以此类推 。
1、int time(void)
2、int ([int hour [,int[,int
[,int month [,int day [,int year]]]]]])
返回指定时刻的时间戳 。如果没有指定,则返回当前时刻的时间戳 。
3、int ( time)
将time所表示的时间转换为时间戳并返回,如果转化失败则返回false 。例如:
(“+1 days”,time());//将当前日期中的日加1后的时间戳返回,注意理解“+1 days”,其中days位置还可以使用:hours,week,year,month等,或将“+1 days”写成:”+1 week 3 days 7 hours 5 “,”next “,”last “ 。
(“+1 days”,time());//将当前日期中的时间加一天 。
4、array ([int ])
根据或当前时刻的时间戳生成一个数组,包含以下元素:
“” 秒(0-59)
“” 分(0-59)
“hours” 时(0-23)
“mday” 日(1-31)
“wday” 星期(0(星期日)-6(星期六))
“mon” 月(1-12)
“year” 年(四位)
“yday” 这一年的第几天(0-365)
【六、PHP基础教程,PHP中常用系统函数】“” 星期全称(-)
“month” 月份全称(-)
0 时间戳,相当于time()返回的值
5、 date([,int ])
根据格式字符串输出所表示的时间或当前时刻 。以下是用于的字符:

六、PHP基础教程,PHP中常用系统函数

文章插图
—年—
Y 年份(四位)
y 年份(两位)
L 是否为闰年(1、0)
—月—
m 月(01-12)
n 月(1-12)
F 月份全称(-)
f 月份简称(Jan-Dec)
t 该月所含天数
—日—
d 日(01-31)
j 日(1-31)
z 这一年的第几天(0-365)
S 英语的日期后缀st、nd、rd、th,与j合用,即”jS”
–星期–
l 星期全称(-)
D 星期简称(Mon-Sun)
w 星期(0(星期日)-6(星期六))
–时间–
H 24时制的小时(00-23)
h 12时制的小时(01-12)
G 24时制的小时(1-24)
g 12时制的小时(1-12)
A 上下午标识(AM-PM)
a 上下午标识(am-pm)
i 分(00-59)
s 秒(00-59)
以上符号之外的符号都会被直接输出 , 如果要输出以上符号则需要转义() 。
6、int idate([,int ])
根据格式字符输出一个由所表示的时间或当前时刻的一个值 。以下是用于的字符:Y、y、m、t、d、w、H、h、i、s,且要注意一次只能使用一个字符 。另外,因为idate()返回的是整数,所以前置导零会被忽略 。
7、mixed ([bool ])
返回一个形如”0. “的字符串,前半部分是微妙,后半部分是时间戳 。如果被设置为true,则返回形如.57的浮点数 。
8、mixed ([bool ])
返回一个数组集合,如果被设置为true , 则等价于(true) 。以下是数组所含元素:
“sec” 时间戳出现未结束字符串常量错误,重装浏览器能解决吗 , 如
“usec” 微秒,如
如果要以当前时刻生成一个精确到毫秒的ID的话:
$ID=date(“”).((),2,3);
9、bool (int month ,int day ,int year)
判断一个日期是否存在 。存在返回1 , 否则返回false 。
10、UNIX时间戳转成标准时间
(X+8*3600)/86400+70*365+19
X表示UNIX时间戳的值 。
〓关于时区的问题〓
从PHP5.1开始我们必须为程序设置时区 。如我们现在在东八区出现未结束字符串常量错误,重装浏览器能解决吗,如果不设置时区的话,以上所有时间函数所得到的时间都会以格林威治时间为准 , 即比我们这里晚8个小时 。设置时区有三种方法:
(1)在php.ini文件中找到date.行,将前面的分号去掉,并赋值”Asia/”或”PRC” 。(老外好象把北京忘了) 。
(2)如果不能修改php.ini文件,则在调用时间函数前,用e_set(“Asia/”)来设置时区 。相应地,可以用e_get()来获取当前时区 。
(3)以下列格式输出时间:echo date(”Y-m-d H:i:s”, time()+8*60*60);
这样,时区就调整好了 , 时间函数也能准确运作了 。其他可用与时区设置的参数可自行查阅PHP文档 。
6.8、empty()与isset()函数的区别
empty(变量名):
如果 var 是非空或非零的值,则 empty() 返回 FALSE 。换句话说,””、0、”0″、NULL、FALSE、array()、var $var; 以及没有任何属性的对象都将被认为是空的,如果var 为空 , 则返回TRUE 。
除了当变量没有置值时不产生警告之外,empty()是 () var 的反义词 。
isset(变量名):
如果var存在则返回TRUE,否则返回FALSE 。
如果已经使用unset() 释放了一个变量之后,它将不再是 isset() 。若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE 。同时要注意的是一个 NULL 字节(””)并不等同于 PHP 的 NULL 常数 。
警告: isset() 只能用于变量,因为传递任何其它参数都将造成解析错误 。若想检测常量是否已设置,可使用 () 函数 。
PHP还设置了其他很多的以“is_”开头的函数,从名字就可以看出,这类函数的功能就是用来判断在调用该函数时所给出的参数“是不是什么类型的”、“是不是由什么组成的”或“是不是可以进行某种操作” 。下面给出一些常用的以“is_”开头的函数,供大家参考:
(),(),(),(),(),(),(),()判断数值是否是合法的,() , (),()
6.9、unset()函数
功能:释放给定的变量
语法:unset(变量1,变量2,……)
6.10 ()函数
() 函数返回绝对路径 。
该函数删除所有符号连接(比如 ‘/./’, ‘/../’ 以及多余的 ‘/’),返回绝对路径名 。若失败 , 则返回 false 。比如说文件不存在的话 。
6.11 PHP编码转换函数
iconv()函数的作用是:转换字符串的编码 。
iconv (,,str )
注意:第二个参数,除了可以指定要转化到的编码以外,还可以增加两个后缀:// 和 // , 其中 // 会自动将不能直接转化的字符变成一个或多个近似的字符,// 会忽略掉不能转化的字符 , 而默认效果是从第一个非法字符截断 。
() 函数
()函数的作用是:宽字符编码转换
(str,to- [, mixed from-])
注意:但是需要先扩展库 。两者区别: 中根据内容自动识别编码;功能强大,但是执行效率比iconv差太多;
总结:一般情况下用 iconv,只有当遇到无法确定原编码是何种编码时才用函数 。
例如:转换成utf-8
$utf=iconv(”, ‘UTF-8’, $[”]);
将字符串utf-8码转换为码
$str = iconv(“UTF-8″,”//”,$str);
6.12 URL参数编码与解码
()
— 对用()已编码的 URL 字符串进行解码
描述
(str)
返回字符串,此字符串中百分号(%)后跟两位十六进制数的序列都将被替换成原义字符 。
例子 1. () 示例
()
— 按照 RFC 1738 对 URL 进行编码
描述
(str)
返回字符串 , 此字符串中除了 -_. 之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数 。这是在 RFC 1738 中描述的编码,是为了保护原义字符以免其被解释为特殊的 URL 定界符 , 同时保护 URL 格式以免其被传输媒体(像一些邮件系统)使用字符转换时弄乱 。例如,如果你想在 FTP 的 URL 中包含密码:
例子 1. () 示例 1
本文到此结束,希望对大家有所帮助!

猜你喜欢