PHP系统函数

(一)字符串处理函数

Chr函数

作用:根据ASCII码返回相应的字符。

语法:string chr(int ascii);

Chop函数

作用:去除字符串中连续空格和空白行。

语法:string chop(string str);

Echo函数

作用:对字符串进行输出。

语法:echo string arg1,string arg2,...string argn;

Explode函数

作用:切割字符串。

语法:array explode(string separator,string mystr);

用法:以separator为分隔符,把字符串mystr切割到数组中。

Implode函数

作用:将数组变成字符串。

语法:string implode(string separator,array myarray);

用法:以separator为分隔符,将数组中的元素组合到一个新的字符串中。

Ltrim函数

作用:压缩字符串中的空格,空格可以包括\n、\r、\t、\v等。

语法:string ltrim(string str);

Print函数

作用:输入信息。

语法:print(string str);

Printf函数

作用:输出格式化字符串。

语法:int printf(string format,mixed[args]...);

本函数用来将字符串格式化并进行输出。参数format是转换的格式,以%开始到转换字符为止。

其中转换的格式包括:

填充字符:指定档字符串长度小于要求的长度时,在字符串后面添加的字符,可以为空格或0,默认为空格。

对齐方式:默认值为右对齐,负号表示左对齐。

输出长度:设定最小输出长度。

小数位:指定浮点数的小数位数。

类型:

%                        只显示%

B                        二进制方式显示整数

c                        ASCII值显示整数

d                        十进制整数

f                        双精度浮点数

o                        八进制整数

s                        以字符串方式显示

x                        以十六进制方式显示(小写)

X                        以十六进制方式显示(大写)

Strcasecmp函数

作用:不区分字母大小写进行字符串比较。

语法:int strcasecmp(string str1,string str2);

说明:将两个字符串str1和str2进行比较,返回值如下:

若str1<str2,返回值<0

若str1>str2,返回值>0

若str1=str2,返回值=0

本函数区分大小写。

Strchr函数

作用:在字符串中查找子字符串。

语法:string strchr(string str1,string str2);

说明:在字符串str1中查找字符串str2,如果没有找到,返回空字符串;如果找到,返回str1中自str2开始到str1末尾的一个子字符串。

Strlen函数

作用:获取某字符串的长度。

语法:int strlen(string str);

注意:在获取字符串长度时,字符串中的标点符号和空格都被计算在内。

Str_repeat函数

作用:重复某个字符串。

语法:string str_repeat(string input,int times);

说明:将字符串input重复times次。

Strrev函数

作用:将字符串倒序排列。

语法:string strrev(string mystr);

Strtolower和Strtoupper函数

作用:将字符串中的字母进行大写或小写的转换。

语法:string strtolower(string mystr);

string strtoupper(string mystr);

Str_replace函数

作用:字符串替换函数。

语法:string str_replace(string str1,string str2,string str3);

说明:将字符串str3中的所有str1字符替换为str2。

Substr函数

作用:获取子字符串函数。

语法:string substr(string mystr,int start,int[length]);

说明:从字符串mystr中获取子字符串,子字符串的起始位置由参数start决定,子字符串的长度由length决定。

计算start的值时需要注意:在获取子字符串时,字符串mystr的下标从0开始。

(二)目录管理和文件系统函数

Chdir函数

作用:改变当前路径。

语法:int chdir(string directory);

说明:操作成功返回true,操作失败返回false。

Dir函数

作用:读取一个目录,并将读取的结果返回为一个对象。

语法:new dir(string directory);

说明:函数执行后返回两个有用的属性:handle和path;在以后对该目录进行操作时,都可以通过目录句柄handle来实现。

Opendir和Closedir函数

作用:打开或关闭一个目录句柄。

语法:int opendir(string path);

void closedir(int dir_handle);

说明:closedir函数的参数dir_handle,就是利用opendir()函数打开目录后的返回值。必须先使用opendie,然后再使用closedir。

Readdir函数

作用:读取目录。

语法:string readdir(int dir_handle);

说明:读取目录中当前句柄指针所指的文件,操作成功后返回文件名。

Rewinddir函数

作用:复位目录句柄。

语法:void rewinddir(int dir_handle);

说明:将打开目录的文件句柄移到顶端,实际上就是"."。

Basename函数

作用:返回不含路径的程序文件名。

语法:string basename(string path);

Copy函数

作用:文件复制。

语法:int copy(string source,string dest);

说明:文件复制成功返回true,复制失败则返回false。

Diskfreespace函数

作用:获取指定目录所在分区的可用磁盘空间。

语法:float diskfreespace(string directory);

说明:返回值的单位为字节。

Fclose函数

作用:关闭已经打开的文件。

语法:int fclose(int fp);

说明:关闭已经打开的文件指针fp,如果成功则返回true;如果失败则返回false。其中fp必须是使用fopen()或fsockopen()函数已成功打开的文件指针。

Feof函数

作用:测试文件指针是否移动到文件末尾。

语法:int feof(int fp);

说明:该函数用来测试文件指针是否已经移动到文件末尾,如果已经移动到文件末尾,则返回true,否则返回false。在对文件进行读取操作时,经常利用这个函数来设定文件读取的结束条件。

Fgetc函数

作用:获取当前文件指针所在位置的字符。

语法:string fgetc(int fp);

说明:当前文件指针必须是有效的,即必须是用fopen、popen或fsockopen函数打开的文件指针。

注意:在使用fgetc函数获取当前文件指针所在位置的字符时,隐含着一个移动文件指针的功能,即:每当使用fgetc函数读取了一个字符后,文件指针自动向后移动一个位置,因此在while循环中进行了检测。

Fgets函数

作用:获取当前文件指针所在位置的批量字符。

语法:string fgets(int fp,int length);

说明:从当前文件指针fp处获得长度为length的批量字符。

Fgetss函数

作用:获取当前文件指针所在位置的批量字符,并且去除其中的HTML标记。

语法:string fgetss(int fp,int length);

File函数

作用:将文件内容全部读取到数组变量中。

语法:array file(string filename);

File_exists函数

作用:确定文件是否存在。

语法:int file_exists(string filename);

Filemtime函数

作用:获取文件最后修改时间。

语法:int filemtime(string filename);

Filesize函数

作用:获取文件大小。

语法:int filesize(string filename);

说明:这个函数将返回文件大小,如果发生错误则会返回false。

Filetype函数

作用:获取文件类型。

语法:string filetype(string filename);

说明:这个函数将返回文件类型,其中可能的文件类型有:block、char、dir、file、link等,如果发生错误则会返回false。

Fopen函数

作用:打开文件。

语法:int fopen(string filename,string mode);

说明:这个函数将会打开本地或远程文件,如果参数filename是以"http://"开头的,则会通过HTTP协议和远程主机连接。如果参数filename是以"ftp://"开头的,则会通过FTP协议和远程主机连接。如果打开文件失败,则会返回false值。

参数"mode"代表打开文件的方式,"mode"的可能值:

参数                含义

r                只读,文件指针移动到文件开始处

r+                可读写,文件指针移动到开始处

w                写入,文件指针移动到开始处,并将文件长度设为0。如文件不存在,则创建新文件。

w+                可读写,文件指针移动到开始处,并将文件长度设为0。如文件不存在,则创建新文件。

a                写入,文件指针移动到文件尾。如文件不存在,则创建新文件(追加方式)。

a+                可读写,文件指针移动到文件尾。如文件不存在,则创建新文件(追加方式)。

Fputs函数

作用:将字符串写入到文件中。

语法:int fputs(int fp,string str,int [length]);

说明:将字符串str写入到文件指针fp所指的文件中,length为写入信息的长度,超过length的字符串将会被截掉。length参数可以省略,如省略,将按照str的实际长度计算。

Fread函数

作用:使用字节方式读取文件。

语法:string fread(int fp,int length);

Fseek函数

作用:移动文件指针。

语法:int fseek(int fp,int offset);

说明:将文件指针移动到指定的偏移量(offset)。

Ftell函数

作用:取得文件读、写指针的位置。

语法:int ftell(int fp);

说明:返回文件指针fp的偏移位置。

(三)电子邮件函数

Mail函数

作用:发送电子邮件。

语法:bool mail(string to,string subject,string message,string [additional_headers]);

参数说明:

to:收件人Email地址

subject:邮件主题

message:邮件正文

additional_header:邮件扩展头文件(可选)

(四)数学运算函数

Abs函数

作用:求一个数的绝对值。

语法:mixed abs(mixed number);

说明:函数可以接受的参数可以是整数或浮点数,对应的返回值也会做相应调整。

Acos函数

作用:求一个数的反余弦值。

语法:float acos(float number);

Asin函数

作用:求一个数的反正弦值。

语法:float asin(float number);

Atan函数

作用:求一个数的反正切值。

语法:float atan(float number);

Base_convert函数

作用:实现数学进制间的转换。

语法:string base_convert(string number,int from,int to);

说明:将数字字符串由from所声明的进制转换为to所声明的进制。

Ceil函数

作用:计算不小于指定数的最小整数。

语法:int ceil(float number);

Cos函数

作用:计算余弦值。

语法:float cos(float number);

Floor函数

作用:计算小于指定数的最大整数。

语法:int floor(float number);

Max函数

作用:取得多个参数之间的最大值。

语法:mixed max(mixed arg1,mixed arg2,...mixed argn);

说明:这个函数的参数个数不是固定的,参数类型可以是字符型、整型,也可以是浮点型。同时,如果第一个参数为数组名,max函数就会计算出该数组中所有元素中的最大值。

Min函数

作用:取得多个参数之间的最小值。

语法:mixed min(mixed arg1,mixed arg2,...mixed argn);

说明:这个函数的参数个数不是固定的,参数类型可以是字符型、整型,也可以是浮点型。同时,如果第一个参数为数组名,min函数就会计算出该数组中所有元素中的最小值。

Mt_rand函数

作用:生成随机数值。

语法:int mt_rand([int min],[int max]);

说明:函数有两个可选参数,可以设定随机数生成的范围,如果不选择,则会从0到RAND_MAX中取一个随机数。为了保证随机数的效果,最好在使用这个函数前使用函数mt_srand设定随机种子。如果每次都设定了不同的随机种子,则产生的随机数序列的随机效果就会更好一些。

Mt_srand函数

作用:设定随机数种子。

语法:void mt_srand(int seed);

说明:根据参数seed设定随机种子,因此最好seed的取值也是随机的,一般我们可以采用时间作为随机数种子。

Number_format函数

作用:对浮点数格式化输出。

语法:string number_format(float number,int [decimals],string [dec_point],string [sep]);

说明:本函数用来将浮点数number格式化,其中第一个参数number指定被格式化的浮点数;第二个参数decimals指定格式化后的小数位数,如果number的小数位多于指定的小数位,则会进行四舍五入;第三个参数dec_point指定整数和小数部分间的分隔符,默认值为".";第四个参数sep指定整数部分中每三位间的分隔符,默认值为","。

注意:系统规定,number_format的参数个数可以是一个、两个或四个,但不能是三个。

Pow函数

作用:对某个数进行乘方运算。

语法:float pow(float base,float exp);

说明:计算base的exp次方。

Round函数

作用:对某个数进行四舍五入。

语法:int round(double number);

Sin函数

作用:计算正弦值。

语法:float sin(float number);

Sqrt函数

作用:开平方根。

语法:float sqrt(float number);

Tan函数

作用:计算正切。

语法:float tan(float number);

(五)数组处理函数

Array函数

作用:创建数组。

语法:array array(...);

说明:可以使用array来创建一维或多维数组,在创建数组时,可以通过"=>"符号对数组进行指定,"=>"左边的是数组索引,索引可以是数字,也可以是字符,默认情况下使用数字作为数组索引;"=>"右边的是数组元素的值。

Array_count_values函数

作用:对一个数组中的元素进行统计。

语法:array array_count_values(array myarray);

说明:该函数返回一个数组,返回数组中的索引即为原数组中各元素的值,返回数组中的值即为原数组中各元素值出现的次数。

Array_flip函数

作用:对一个数组进行索引和值的互换。

语法:array array_flip(array source);

说明:如果原数组中有相同的元素,则返回数组的长度与原数组不相同。

Array_keys函数

作用:返回数组的索引值。

语法:array array_keys(array myarray,mixed[search_str];

说明:array_keys函数的作用是提取数组myarray的索引值,并且把提取结果放在新的数组中,search_str为可选参数,如果设定,则只返回与此参数相同的值,否则全部返回。

Array_merge函数

作用:合并数组。

语法:array array_merge(array array1,array array2,[...]);

说明:合并多个数组,并将合并后的结果返回。

Array_reverse函数

作用:颠倒数组记录前后次序。

语法:array array_reverse(array myarray);

Array_slice函数

作用:取出数组中的一部分形成一个新数组。

语法:array array_slice(array myarray,int offset,[int length]);

说明:从数组myarray中取出一部分形成一个新数组,在取新数组时,起始位置为offset,新数组中元素个数由length指定。

注意:当offset为正数时,从offset位置开始取,如果offset为负数,从数组后面反序取;如果length为正数,从offset位置开始取length个数组元素,如果length为0,从offset位置取到数组的最后一个元素,如果为负数,从offset取到距尾部length位置处,如果length被省略,则从offset位置取到数组的最后一个元素。

Array_values函数

作用:返回数组元素中所有元素的值。

语法:array array_values(array source);

Arsort函数

作用:将数组中的元素按照值从大到小的次序来排序。

语法:void arsort(array myarray);

Asort函数

作用:将数组中元素按照从小到大的次序来排序。

语法:void asort(array myarray);

Compact函数

作用:合并变量为数组。

语法:array compact(string var1,string var2,[...]);

说明:compact将会合并一个变量到一个数组中,其中参数var1,var2...为函数的参数,在使用时可以取变量名,在新构造的数组中var1,var2所保存变量的名字即为数组元素索引,而var1,var2所保存变量中的值作为数组中元素的值。如果var1,var2...为一个数组,将查找数组中每个元素的值为变量名的变量是否存在,如果存在,则数组中的每个元素索引作为新数组的索引,数组中所保存变量的值作为新数组中的值。

Count函数

作用:返回数组中元素个数。

语法:int count(mixed var);

说明:返回数组中元素的个数,如果var不是数组则返回1,如果没有此数组变量或数组为一个空数组,则返回0。

Current函数

作用:返回数组中当前元素的值。

语法:mixed current(array myarray);

说明:返回数组指针当前所指元素的值。

Each函数

作用:返回数组中当前元素的索引和值。

语法:array each(array myarray);

说明:返回数组中当前元素的索引和值,分别可以通过"0、1"和"key、value"的方式来访问数组中元素的值。

End函数

作用:将数组指针移动到最后一个元素位置。

语法:end(array myarray);

In_array函数

作用:在数组中查找某个值。

语法:bool in_array(mixed vv,array myarray);

Key函数

作用:取得数组的索引。

语法:mixed key(array myarray);

说明:返回数组的索引,索引可以是数字,也可以是字符串。

Krsort函数

作用:按照索引倒序排列数组的元素。

语法:int krsort(array myarray);

说明:按照数组元素的索引从大到小排列。

Ksort函数

作用:按照索引正序排列数组的元素。

语法:int ksort(array myarray);

说明:按照数组元素的索引从小到大排列。

List函数

作用:列出数组中元素的值。

语法:void list(...);

Next函数

作用:将数组指针后移。

语法:mixed next(array myarray);

Reset函数

作用:复位数组指针。

语法:mixed reset(array myarray);

Sizeof函数

作用:获取数组大小。

语法:int sizeof(array myarray);

(六)日期与时间函数

Checkdate函数

作用:检查是否为有效时间。

语法:int checkdate(int month,int day,int year);

说明:检查输入的year、month、day所构成的时间是否为有效时间,如果是,返回True,否则返回False。

Date函数

作用:获取当前系统时间。

语法:string date(string format,int [timestamp]);

说明:将timestamp所指定的时间格式化输出,如果没有指定timestamp,则显示当前系统时间。

格式化字符串如下:

a        "am"或"pm"

A        "AM"或"PM"

d        两位数字表示的日期,如"01"或"31"

D        三位字符表示的星期,如"Fri"

F        月份全称,如"May"

h        12小时制的时间,从"01"到"12"

H        24小时制的时间,从"00"到"23"

g        12小时制的时间,从"1"到"12"

G        24小时制的时间,从"0"到"23"

i        分钟,从"00"到"59"

j        日期,从"1"到"31"

l        英文星期名全称,如"Friday"

L        是否为闰年,取值为"0"或"1"

m        月份,取值"01"到"12"

n        月份,取值"1"到"12"

M        英文月份缩写,例如"May"

s        秒,取值"00"到"59"

S        字尾加英文序数,如"th"或"nd"

t        给定月的天数,取值范围:"28"到"31"

U        总秒数

w        数字表示星期,取值范围:"0"(Sunday)到"6"(Saturday)

Y        年,4位数字,如"1999"

y        年,2位数字,如"99"

z        年中的第几天,取值范围从"0"到"365"

Getdate函数

作用:获取当前系统时间信息。

语法:array getdate(int timestamp);

说明:返回一个系统时间相关信息的数组,如果没有参数,则返回当前系统时间的信息。

数组索引值及其对应的数组元素的值的含义:

"seconds"                秒

"minutes"                分

"hours"                        时

"mday"                        本月的第几天

"wday"                        本周的第几天

"yday"                        本年的第几天

"month"                        月份(数字)

"weekday"                星期的全名,如"Monday"

"year"                        年(数字)

Mktime函数

作用:根据给定时间计算距1970-1-1的秒数。

语法:int mktime(int hour,int minute,int second,int month,int day,int year,[int is_dst]);

说明:根据给定参数构造一个时间,然后计算该时间距1970-1-1,0时0分0秒的秒数。

(七)Session函数

Session_start函数

作用:初始化新的Session变量。

语法:bool session_start(void);

说明:该函数可以初始化一个新的Session,如果该用户已经创建了一个Session,则保持原有Session。

Session_destroy函数

作用:删除Session中所有数据。

语法:bool session_destroy(void);

Session_name函数

作用:设定目前Session的名称。

语法:string session_name([string name]);

说明:用来取得或设定目前Session名称,如果指定name参数,则取得该Session名称。如果未指定name参数,则设定该Session名称。

Session_register函数

作用:注册一个或多个全局变量。

语法:bool session_register(mixed name,mixed [...]);

说明:在当前Session中注册一个或多个全局变量,变量类型可以是普通变量或数组,注册成功返回true,注册失败返回false。

Session_unregister函数

作用:删除已注册的变量。

语法:bool session_unregister(string name);

说明:从当前Session中删除一个全局变量,删除成功返回true,删除失败返回false。

Session_is_registered函数

作用:检查变量是否注册。

语法:bool session_is_registered(string name);

说明:检查当前session中,变量name是否已注册,如果已注册返回true,否则返回false。

上一篇:Tiny4412MMU内存管理


下一篇:《Java程序设计》终极不改版