PHP常用函数

转载地址:http://www.php.cn/toutiao-377486.html

数学函数:

函数名

描述

实例

输入

输出

abs()

求绝对值

$abs = abs(-4.2); //4.2

数字

绝对值数字

ceil()

进一法取整

echo ceil(9.999); // 10 

浮点数

进一取整

floor()

舍去法取整

echo floor(9.999); // 9

浮点数

直接舍去小数部分

fmod(x, y)

浮点数取余

$x = 5;$y = 2;

echo fmod($x, $y);                     // 1(5/2=2余1)

两个浮点数,x>y

返回x/y后的余数

pow(x, y)

返回数的n次方

echo pow(-1, 20);                      // 1 (-1的20次方=1)

基础数|n次方

返回x的y次幂

round(x ||, prec)

浮点数四舍五入

echo round(1.95583, 2);// 1.96

一个数值|保留小数点后多少位,默认为0

舍入后的结果

sqrt()

求平方根

echo sqrt(9); //3

被开方的数

平方根

max()

求最大值

echo max(1, 3, 5, 6, 7);  // 7

echo max(array(2, 4, 5)); // 5

多个数字或数组

返回其中的最大值

min()

求最小值

 

多个数字或数组

返回其中的最小值

mt_rand()

更好的随机数

echo mt_rand(0,9);//n

最小|最大,随机数

随机返回范围内的值

rand()

随机数

 

最小|最大,随机数

随机返回范围内的值

pi()

获取圆周率值

echo pi(); // 3.1415926535898

获取圆周率

字符串函数:

函数名

描述

实例

输入

输出

去空格或或其他字符:

 

 

 

 

 

trim(string ||, charlist)

删除字符串两端的空格或其他预定义字符

$str = "\r\nHello World!\r\n";

echo trim($str);    //Hello Word!

 

目标字串|要删除的字符,默认/0,/n,/t,/r,

" ",/x0B

清除后的字符串

rtrim()

删除字符串右边的空格或其他预定义字符

$str = "Hello World!\n\n";

echo rtrim($str);

 

 

chop()

rtrim()的别名

 

 

 

ltrim()

删除字符串左边的空格或其他预定义字符

$str = "\r\nHello World!";

echo ltrim($str);

 

 

dirname()

返回路径中的目录部分

echo dirname("c:/testweb/home.php");

一个包含路径的字符串

返回去掉文件名后的目录名c:/testweb

字符串生成与转化:

 

 

 

 

str_pad(string, length ||, pad_string ||, pad_ type)

把字符串填充为指定的长度

$str = "Hello World";

echo str_pad($str,20,".");

要填充的字符串|新字符串的长度|供填充使用的字符串,默认是空白|填充方向

完成后的字符串

str_repeat(string, repeat)

重复使用指定字符串

echo str_repeat(".",13);

要重复的字符串|字符串将被重复的次数

13个点

str_split(string ||, length)

把字符串分割到数组中

print_r(str_split("Hello"));

要分割的字符串|每个数组元素的长度,默认1

拆分后的字符串数组

strrev()

反转字符串

echo strrev("Hello World!");   //!dlroW olleH

目标字符串

颠倒顺序后的字符串

wordwrap(string ||, width ||, break ||, cut)

按照指定长度对字符串进行折行处理

$str = "An example of a long word is: Supercalifragulistic";
echo wordwrap($str,15,"<br>\n",TRUE);

//An example of a
long word is:
Supercalifragul
istic

目标字符串|最大宽数|转行符,默认/n|是否对大于指定宽度的单词进行折行,默认否

折行后的新字符串

str_shuffle()

随机地打乱字符串中所有字符

echo str_shuffle("Hello World");

目标字符串

顺序打乱后的字符串

parse_str(string, array)

将字符串解析成变量

parse_str("id=23&name=John%20Adams",$myArray);

print_r($myArray);   

//Array([id] => 23 [name] => John Adams)

 

parse_str("name=Bill&age=60");
echo $name; //Bill
echo $age;  //60

要解析的字符串|存储变量的数组名称

把查询字符串解析到变量中

number_format(number ||decimals ||decimalpointseparator)

通过千位分组来格式化数字

 

echo number_format("5000000")."<br>";
//5,000,000
echo number_format("5000000",2)."<br>";
//5,000,000.00
echo number_format("5000000",2,",",".");
//5.000.000,00
要格式化的数字|规定多少个小数|规定用作小数点的字符串|规定用作千位分隔符的字符串

大小写转换:

 

 

 

 

strtolower()

字符串转为小写

echo strtolower("Hello WORLD!");

目标字符串

小写字符串

strtoupper()

字符串转为大写

echo strtoupper("Hello WORLD!");

 

大写字符串

ucfirst()

字符串首字母大写

echo ucfirst("hello world");

 

Hello world

ucwords()

字符串每个单词首字符转为大写

echo ucwords("hello world");

 

Hello World

html标签关联:

 

 

 

 

htmlentities()

把字符转为HTML实体

$str = "John & 'Adams'";

echo htmlentities($str, ENT_COMPAT);

 

John & 'Adams'

htmlspecialchars()

预定义字符转html编码

 

 

 

nl2br()

\n转义为<br>标签

echo nl2br("One line.\nAnother line.");

 

处理后的字符串

strip_tags()

剥去 HTMLXML 以及 PHP 的标签

echo strip_tags("Hello <b>world!</b>");

 

 

addcslashes()

在指定的字符前添加反斜线转义字符串中字符

$str = "Hello, my name is John Adams.";

echo $str;

echo addcslashes($str,'m');

目标字符串|指定的特定字符或字符范围

 

stripcslashes()

 删除由addcslashes()添加的反斜线

echo stripcslashes("Hello, \my na\me is Kai Ji\m.");

目标字符串

Hello, my name is Kai Jim.

addslashes()

指定预定义字符前添加反斜线

$str = "Who's John Adams?";echo addslashes($str);

 

把目标串中的' " \null进行转义处理

stripslashes()

删除由addslashes()添加的转义字符

echo stripslashes("Who\'s John Adams?");

 

清除转义符号Who's John Adams?

quotemeta()

在字符串中某些预定义的字符前添加反斜线

$str = "Hello world. (can you hear me?)";

echo quotemeta($str);

 

Hello world\. \(can you hear me\?\)

chr()

从指定的 ASCII 值返回字符

echo chr(052);

ASCII

返回对应的字符//*

ord()

返回字符串第一个字符的 ASCII

echo ord("hello");

字符串

第一个字符的 ASCII

字符串比较:

 

 

 

 

strcasecmp()

不区分大小写比较两字符串

echo strcasecmp("Hello world!","HELLO WORLD!");

两个目标字符串

1|0|-1

strcmp()

区分大小写比较两字符串

 

 

 

strncmp()

比较字符串前n个字符,区分大小写

int strncmp ( string $str1 , string $str2 , int $len )

 

 

strncasecmp()

比较字符串前n个字符,不区分大小写

int strncasecmp ( string $str1 , string $str2 , int $len )

 

 

strnatcmp()

自然顺序法比较字符串长度,区分大小写

int strnatcmp ( string $str1 , string $str2 )

目标字符串

 

strnatcasecmp()

自然顺序法比较字符串长度,不区分大小写

int strnatcasecmp ( string $str1 , string $str2 )

 

 

字符串切割与拼接:

 

 

 

 

chunk_split()

将字符串分成小块

str chunk_split(str $body[,int $len[,str $end]])

$body目标字串,$len长度,$str插入结束符

分割后的字符串

strtok()

切开字符串

str strtok(str $str,str $token)

目标字符串$str,以$token为标志切割

返回切割后的字符串

explode()

使用一个字符串为标志分割另一个字符串

array explode(str $sep,str $str[,int $limit])

$sep为分割符,$str目标字符串,$limit返回数组最多包含元素数

字符串被分割后形成的数组

implode()

join,将数组值用预订字符连接成字符串

string implode ( string $glue , array $pieces )

$glue默认,用''则直接相连

 

substr()

截取字符串

string substr ( string $string , int $start [, int $length ] )

 

 

字符串查找替换:

 

 

 

 

str_replace()

字符串替换操作,区分大小写

mix str_replace(mix $search,,mix $replace,mix $subject[,int &$num])

$search查找的字符串,$replace替换的字符串,$subject被查找字串,&$num

返回替换后的结果

str_ireplace()

字符串替换操作,不区分大小写

mix str_ireplace ( mix $search , mix $replace , mix $subject [, int &$count ] )

$search查找的字符串,$replace替换的字符串,$subject被查找字串,&$num

返回替换后的结果

substr_count()

统计一个字符串,在另一个字符串中出现次数

int substr_count ( string $haystack , string $needle [, int $offset = 0 [, int $length ]] )

 

 

 

substr_replace()

替换字符串中某串为另一个字符串

mixed substr_replace ( mixed $string , string $replacement , int $start [, int $length ] )

 

 

similar_text()

返回两字符串相同字符的数量

int similar_text(str $str1,str $str2)

两个比较的字符串

整形,相同字符数量

strrchr()

返回一个字符串在另一个字符串中最后一次出现位置开始到末尾的字符串

string strrchr ( string $haystack , mixed $needle )

 

 

strstr()

返回一个字符串在另一个字符串中开始位置到结束的字符串

string strstr ( string $str, string $needle , bool $before_needle )

 

 

strchr()

strstr()的别名,返回一个字符串在另一个字符串中首次出现的位置开始到末尾的字符串

string strstr ( string $haystack , mixed $needle [, bool $before_needle = false ] )

 

 

stristr()

返回一个字符串在另一个字符串中开始位置到结束的字符串,不区分大小写

string stristr ( string $haystack , mixed $needle [, bool $before_needle = false ] )

 

 

strtr()

转换字符串中的某些字符

 string strtr ( string $str , string $from , string $to )

 

 

strpos()

寻找字符串中某字符最先出现的位置

int strpos ( string $haystack , mixed $needle [, int $offset = 0 ] )

 

 

stripos()

寻找字符串中某字符最先出现的位置,不区分大小写

int stripos ( string $haystack , string $needle [, int $offset ] )

 

 

strrpos()

寻找某字符串中某字符最后出现的位置

int strrpos ( string $haystack , string $needle [, int $offset = 0 ] )

 

 

strripos()

寻找某字符串中某字符最后出现的位置,不区分大小写

int strripos ( string $haystack , string $needle [, int $offset ] )

 

 

strspn()

返回字符串中首次符合mask的子字符串长度

int strspn ( string $str1 , string $str2 [, int $start [, int $length ]] )

 

 

strcspn()

返回字符串中不符合mask的字符串的长度

int strcspn ( string $str1 , string $str2 [, int $start [, int $length ]] )

$str1被查询,$str2查询字符串,$start开始查询的字符,$length查询长度

返回从开始到第几个字符

字符串统计:

 

 

 

 

str_word_count()

统计字符串含有的单词数

mix str_word_count(str $str,[])

目标字符串

统计处的数量

strlen()

统计字符串长度

int strlen(str $str)

目标字符串

整型长度

count_chars()

统计字符串中所有字母出现次数(0..255)

mixed count_chars ( string $string [, int $mode ] )

 

 

字符串编码:

 

 

 

 

md5()

字符串md5编码

$str = "Hello";

echo md5($str);

 

 

 

数组函数:

函数名

描述

实例

输入

输出

备注

数组创建:

 

 

 

 

 

array()

生成一个数组

$a=array("Dog","Cat","Horse");

print_r($a);

数组值或,=>

一个数组型变量

 

array_combine()

生成一个数组,用一个数组的值作为键名,另一个数组值作为值

$a1=array("a","b","c","d");

$a2=array("Cat","Dog","Horse","Cow");

print_r(array_combine($a1,$a2));

$a1为提供键,$a2提供值

合成后的数组

 

range()

创建并返回一个包含指定范围的元素的数组。

$number = range(0,50,10);

print_r ($number);

0是最小值,50是最大值,10是步长

合成后的数组

 

compact()

创建一个由参数所带变量组成的数组

$firstname = "Peter";

$lastname = "Griffin";

$age = "38";

$result = compact("firstname", "lastname", "age");

print_r($result);

 

变量或数组

返回由变量名为键,变量值为值的数组,变量也可以为多维数组.会递归处理

 

array_fill()

用给定的填充(值生成)数组

$a=array_fill(2,3,"Dog");

print_r($a);

2是键,3是填充的数量,'Dog'为填充内容

返回完成的数组

 

数组合并和拆分:

 

 

 

 

 

array_chunk()

把一个数组分割为新的数组块

$a=array("a"=>"Cat","b"=>"Dog","c"=>"Horse","d"=>"Cow");

print_r(array_chunk($a,2));

一个数组

分割后的多维数组,规定每个新数组包含2个元素

 

array_merge()

把两个或多个数组合并为一个数组。

$a1=array("a"=>"Horse","b"=>"Dog");

$a2=array("c"=>"Cow","b"=>"Cat");

print_r(array_merge($a1,$a2));

两个数组

返回完成后的数组

 

array_slice()

在数组中根据条件取出一段值,并返回。

$a=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird");

print_r(array_slice($a,1,2));

一个数组

1为从'Cat'开始,2为返回两个元素

 

数组比较:

 

 

 

 

 

array_diff()

返回两个数组的差集数组

$a1=array(0=>"Cat",1=>"Dog",2=>"Horse");

$a2=array(3=>"Horse",4=>"Dog",5=>"Fish");

print_r(array_diff($a1,$a2));

两个或多个数组

返回'Cat'$a1$a2的不同之处

 

array_intersect()

返回两个或多个数组的交集数组

 

 

返回'Dog''Horse',$a1$a2的相同之处

 

数组查找替换:

 

 

 

 

 

array_search()

在数组中查找一个值,返回一个键,没有返回返回假

$a=array("a"=>"Dog","b"=>"Cat","c"=>"Horse");

echo array_search("Dog",$a);

一个数组

成功返回键名,失败返回false

 

array_splice()

把数组中一部分删除用其他值替代

$a1=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird");

$a2=array(0=>"Tiger",1=>"Lion");

array_splice($a1,0,2,$a2);

print_r($a1);

一个或多个数组

$a1被移除的部分由$a2补全

将原数组替换,注意替换后数组中键名不保留

array_sum()

返回数组中所有值的总和

$a=array(0=>"5",1=>"15",2=>"25");

echo array_sum($a);

一个数组

返回和

 

in_array()

在数组中搜索给定的值,区分大小写

$people = array("Peter", "Joe", "Glenn", "Cleveland");

if (in_array("Glenn",$people){

  echo "Match found";}else{

  echo "Match not found";}

需要搜索的值|数组

true/false

 

array_key_exists()

判断某个数组中是否存在指定的 key

 

需要搜索的键名|数组

 

 

数组指针操作:

 

 

 

 

 

key()

返回数组内部指针当前指向元素的键名

 

 

 

 

current()

返回数组中的当前元素(单元)。

 

 

 

别名pos()

next()

把指向当前元素的指针移动到下一个元素的位置,并返回当前元素的值

prev()

把指向当前元素的指针移动到上一个元素的位置,并返回当前元素的值

end()

将数组内部指针指向最后一个元素,并返回该元素的值(如果成功)

reset()

把数组的内部指针指向第一个元素,并返回这个元素的值

list()

用数组中的元素为一组变量赋值

$my_array=array("Dog","Cat","Horse");

list($a, $b, $c) = $my_array;

$a, $b, $c为需要赋值的变量

变量分别匹配数组中的值

 

array_shift()

删除数组中的第一个元素,并返回被删除元素的值

$a=array("a"=>"Dog","b"=>"Cat","c"=>"Horse");

echo array_shift($a);

print_r ($a);

 

 

 

array_unshift()

在数组开头插入一个或多个元素

$a=array("a"=>"Cat","b"=>"Dog");

array_unshift($a,"Horse");

print_r($a);

 

 

 

array_push()

向数组最后压入一个或多个元素

$a=array("Dog","Cat");

array_push($a,"Horse","Bird");

print_r($a);

目标数组|需要压入的值

返回新的数组

 

array_pop()

删除数组中的最后一个元素

$a=array("Dog","Cat","Horse");

array_pop($a);

print_r($a);

$a为目标数组

返回数组剩余元素

可赋给一个变量输出被弹出的元素

数组键值操作:

 

 

 

 

 

shuffle()

将数组打乱,不保留键名

$my_array = array("a" => "Dog", "b" => "Cat");

shuffle($my_array);

print_r($my_array);

一个或多个数组

顺序打乱后的数组

打乱顺序后键名不会有变化

count()

计算数组中的单元数目或对象中的属性个数

$people = array("Peter", "Joe", "Glenn", "Cleveland");

$result = count($people);

echo $result;

数组

输出元素个数

 

array_flip()

返回一个键值反转后的数组

$a=array(0=>"Dog",1=>"Cat",2=>"Horse");print_r(array_flip($a));

 

 

返回完成后的数组

 

array_keys()

返回数组所有的键,组成一个数组

$a=array("a"=>"Horse","b"=>"Cat","c"=>"Dog");

print_r(array_keys($a));

 

返回由键名组成的数组

 

array_values()

返回数组中所有值,组成一个数组

同上

 

返回由键值组成的数组

 

array_reverse()

返回一个元素顺序相反的数组

同上

 

元素顺序相反的一个数组,键名和键值依然匹配

 

array_count_values()

 统计数组中所有的值出现的次数

$a=array("Cat","Dog","Horse","Dog");

print_r(array_count_values($a));

 

原键值为新键名,次数为新键值

 

array_rand()

从数组中随机抽取一个或多个元素,注意是键名!!!

$a=array("a"=>"Dog","b"=>"Cat","c"=>"Horse");

print_r(array_rand($a,1));

$a为目标数组,1为抽取第几个元素的键名

返回第1个元素的键名b

 

each()

 

 

 

 

 

array_unique()

删除重复值,返回剩余数组

$a=array("a"=>"Cat","b"=>"Dog","c"=>"Cat");

print_r(array_unique($a));

数组

返回无重复值数组,键名不变

当几个数组元素的值相等时,只保留第一个元素,其他的元素被删除

数组排序:

 

 

 

 

 

sort()

按升序对给定数组的值排序,不保留键名

$my_array = array("a" => "Dog", "b" => "Cat", "c" => "Horse");

sort($my_array);

print_r($my_array);

 

true/false

对数组元素进行重排,同时改变键名

rsort()

对数组逆向排序,不保留键名

 

 

 

对数组元素进行重排,同时改变键名

asort()

对数组排序,保持索引关系

 

 

 

对数组进行排序,保留原来的索引或键

arsort()

对数组逆向排序,保持索引关系

 

 

 

 

ksort()

按键名对数组排序

 

 

 

对键名排序,保留键值对应关系

krsort()

将数组按照键逆向排序

 

 

 

保留原来的键

natsort()

用自然顺序算法对数组中的元素排序

 

 

 

对值进行自然排序,保留键值对应关系

natcasesort()

自然排序,不区分大小写

 

 

 

不区分大小写的对值进行自然法排序,保持键值对应关系

文件处理函数:

函数名

描述

实例

输入

输出

操作

fopen()

打开文件或者 URL

$handle = fopen("ftp://user:password@example.com/somefile.txt", "w");

resource fopen ( string filename, string mode [, bool use_include_path [, resource zcontext]] )

如果打开失败,本函数返回 FALSE

 

fclose()

关闭一个已打开的文件指针

$handle = fopen('somefile.txt', 'r');

fclose($handle);

bool fclose(resource handle)

如果成功则返回 TRUE,失败则返回 FALSE

 

文件属性

file_exists()

检查文件或目录是否存在

$filename = '/path/to/foo.txt';

if (file_exists($filename)) {

    echo "exists";

} else {

    echo "does not exist";

}

bool file_exists ( string filename )

指定的文件或目录存在则返回 TRUE,否则返回 FALSE

 

filesize()

取得文件大小

$filename = 'somefile.txt';

echo $filename . ': ' . filesize($filename) . 'bytes';

int filesize ( string $filename )

返回文件大小的字节数,如果出错返回 FALSE 并生成一条 E_WARNING 级的错误

 

is_readable()

判断给定文件是否可读

$filename = 'test.txt';

if (is_readable($filename)) {

    echo '可读';

} else {

    echo '不可读';

}

bool is_readable ( string $filename )

如果由 filename 指定的文件或目录存在并且可读则返回 TRUE

 

is_writable()

判断给定文件是否可写

$filename = 'test.txt';

if (is_writable($filename)) {

    echo '可写';

} else {

    echo '不可写';

}

bool is_writable ( string $filename )

如果文件存在并且可写则返回 TRUEfilename 参数可以是一个允许进行是否可写检查的目录名

同名函数is_writable()

is_executable()

判断给定文件是否可执行

$file = 'setup.exe';

if (is_executable($file)) {

    echo '可执行';

} else {

    echo '不可执行';

}

bool is_executable ( string $filename )

如果文件存在且可执行则返回 TRUE

 

filectime()

获取文件的创建时间

$filename = 'somefile.txt';

echo filectime($filename);

int filectime ( string $filename )

时间以 Unix 时间戳的方式返回,如果出错则返回 FALSE

 

filemtime()

获取文件的修改时间

$filename = 'somefile.txt';

echo filemtime($filename);

int filemtime ( string $filename )

返回文件上次被修改的时间,出错时返回 FALSE。时间以 Unix时间戳的方式返回

 

fileatime()

获取文件的上次访问时间

$filename = 'somefile.txt';

echo fileatime($filename);

int fileatime (string $filename)

返回文件上次被访问的时间,如果出错则返回 FALSE。时间以Unix时间戳的方式返回

 

stat()

获取文件大部分属性值

$filename = 'somefile.txt';

var_dump(fileatime($filename));

array stat (string $filename)

返回由 filename 指定的文件的统计信息

 

文件操作

fwrite()

写入文件

$filename = 'test.txt';

$somecontent = "添加这些文字到文件\n";

$handle = fopen($filename, 'a');    fwrite($handle, $somecontent);

fclose($handle);

int fwrite ( resource handle, string string [, int length] )

string 的内容写入 文件指针 handle 处。 如果指定了 length ,当写入了 length 个字节或者写完了 string 以后,写入就会停止,视乎先碰到哪种情况

同名函数 fputs()

fputs()

同上

 

 

 

同名函数 fwrite()

fread()

读取文件

$filename = "/usr/local/something.txt";

$handle = fopen($filename, "r");

$contents = fread($handle, filesize ($filename));

fclose($handle);

string fread ( int handle, int length )从文件指针 handle,读取最多 length 个字节

从文件指针 handle 读取最多 length 个字节

 

feof()

检测文件指针是否到了文件结束的位置

$file = @fopen("no_such_file", "r");

while (!feof($file)) {

}

fclose($file);

bool feof ( resource handle )

如果文件指针到了 EOF 或者出错时则返回 TRUE,否则返回一个错误(包括 socket 超时),其它情况则返回 FALSE

 

fgets()

从文件指针中读取一行

$handle = @fopen("/tmp/inputfile.txt", "r");

if ($handle) {

    while (!feof($handle)) {

        $buffer = fgets($handle, 4096);

        echo $buffer;

    }

    fclose($handle);

}

string fgets ( int handle [, int length] )

handle 指向的文件中读取一行并返回长度最多为 length - 1 字节的字符串。碰到换行符(包括在返回值中)、EOF 或者已经读取了 length - 1 字节后停止(看先碰到那一种情况)。如果没有指定 length,则默认为 1K,或者说 1024 字节。

 

fgetc()

从文件指针中读取字符

$fp = fopen('somefile.txt', 'r');

if (!$fp) {

    echo 'Could not open file somefile.txt';

}

while (false !== ($char = fgetc($fp))) {

    echo "$char\n";

}

string fgetc ( resource $handle )

返回一个包含有一个字符的字符串,该字符从 handle 指向的文件中得到。碰到 EOF 则返回 FALSE

 

file()

把整个文件读入一个数组中

$lines = file('http://www.example.com/');

// 在数组中循环,显示 HTML 的源文件并加上行号。

foreach ($lines as $line_num => $line) {

    echo "Line #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br />\n";

}

// 另一个例子将 web 页面读入字符串。参见 file_get_contents()

$html = implode('', file ('http://www.example.com/'));

array file ( string $filename [, int $use_include_path [, resource $context ]] )

数组中的每个单元都是文件中相应的一行,包括换行符在内。如果失败 file() 返回 FALSE

 

readfile()

输出一个文件

 

int readfile ( string $filename [, bool $use_include_path [, resource $context ]] )

读入一个文件并写入到输出缓冲。返回从文件中读入的字节数。如果出错返回 FALSE

 

file_get_contents()

将整个文件读入一个字符串

echo file_get_contents('http://www.baidu.com');

string file_get_contents ( string $filename [, bool $use_include_path [, resource $context [, int $offset [, int $maxlen ]]]] )

 

 

file_put_contents()

将一个字符串写入文件

file_put_contents('1.txt','aa');

int file_put_contents ( string $filename , string $data [, int $flags [, resource $context ]] )

该函数将返回写入到文件内数据的字节数

 

ftell()

返回文件指针读/写的位置

$fp=fopen('tx.txt','r'); 

 fseek($fp,10);

 echo ftell($fp);

 fread($fp,4);

 echo ftell($fp);

int ftell ( resource $handle )

返回由 handle 指定的文件指针的位置,也就是文件流中的偏移量

 

fseek()

在文件指针中定位

$fp=fopen('tx.txt','r'); 

 fseek($fp,10);

 echo ftell($fp);

 fread($fp,4);

 echo ftell($fp);

int fseek ( resource $handle , int $offset [, int $whence ] )

成功则返回 0;否则返回 -1

 

rewind()

倒回文件指针的位置

$fp=fopen('tx.txt','r'); 

 fseek($fp,3);

 echo ftell($fp);

 fread($fp,4);

 rewind($fp);

 echo ftell($fp);

bool rewind ( resource $handle )

如果成功则返回 TRUE,失败则返回 FALSE

 

flock()

轻便的咨询文件锁定

$fp=fopen('tx.txt','r');

flock($fp, LOCK_SH);//共享锁

//flock($fp, LOCK_EX);//独立锁,写文件时用它打开

//flock($fp, LOCK_NB);//附加锁

flock($fp, LOCK_UN);//释放锁

fclose($fp);

bool flock ( int $handle , int $operation [, int &$wouldblock ] )

如果成功则返回 TRUE,失败则返回 FALSE

 

目录

basename()

返回路径中的文件名部分

path = "/home/httpd/html/index.php";

$file = basename($path);

$file = basename($path,".php"); 

string basename ( string $path [, string $suffix ] )

给出一个包含有指向一个文件的全路径的字符串,本函数返回基本的文件名。如果文件名是以 suffix 结束的,那这一部分也会被去掉

 

dirname()

返回路径中的目录部分

$path = "/etc/passwd";

$file = dirname($path);

string dirname ( string $path )

给出一个包含有指向一个文件的全路径的字符串,本函数返回去掉文件名后的目录名

 

pathinfo()

返回文件路径的信息

echo '<pre>';

print_r(pathinfo("/www/htdocs/index.html"));

echo '</pre>';

mixed pathinfo ( string $path [, int $options ] )

返回一个关联数组包含有 path 的信息

 

opendir()

打开目录句柄

$fp=opendir('E:/xampp/htdocs/php/study/19');

echo readdir($fp);

closedir($fp);

resource opendir ( string $path [, resource $context ] )

如果成功则返回目录句柄的 resource,失败则返回 FALSE

 

readdir()

从目录句柄中读取条目

$fp=opendir('E:/xampp/htdocs/php/study/19');

echo readdir($fp);

closedir($fp);

string readdir ( resource $dir_handle )

返回目录中下一个文件的文件名。文件名以在文件系统中的排序返回

 

closedir()

关闭目录句柄

$fp=opendir('E:/xampp/htdocs/php/study/19');

echo readdir($fp);

closedir($fp);

void closedir ( resource $dir_handle )

关闭由 dir_handle 指定的目录流。流必须之前被 opendir() 所打开

 

rewinddir()

倒回目录句柄

$fp=opendir('E:/xampp/htdocs/php/study/19');

echo readdir($fp).'<br />';

echo readdir($fp).'<br />';

echo readdir($fp).'<br />';

rewinddir($fp);

echo readdir($fp).'<br />';

closedir($fp);

void rewinddir ( resource $dir_handle )

dir_handle 指定的目录流重置到目录的开头

 

mkdir()

新建目录

mkdir('123');

bool mkdir ( string $pathname [, int $mode [, bool $recursive [, resource $context ]]] )

尝试新建一个由 pathname 指定的目录

 

rmdir()

删除目录

rmdir('123');

bool rmdir ( string $dirname )

尝试删除 dirname 所指定的目录。 该目录必须是空的,而且要有相应的权限。如果成功则返回 TRUE,失败则返回 FALSE

 

unlink()

删除文件

unlink('123/1.txt');

rmdir('123');

bool unlink ( string $filename )

删除 filename 。和 Unix C unlink() 函数相似。如果成功则返回 TRUE,失败则返回 FALSE

 

copy()

拷贝文件

copy('index.php','index.php.bak');

bool copy ( string $source , string $dest )

将文件从 source 拷贝到 dest 。如果成功则返回 TRUE,失败则返回 FALSE

 

rename()

重命名一个文件或目录

rename('tx.txt','txt.txt');

bool rename ( string $oldname , string $newname [, resource $context ] )

如果成功则返回 TRUE,失败则返回 FALSE

 

文件的上传与下载

is_uploaded_file()

判断文件是否是通过 HTTP POST 上传的

if(is_uploaded_file($_FILES['bus']['tmp_name'])){

  if( move_uploaded_file($_FILES['bus']['tmp_name'], $NewPath) ){

   echo '上传成功<br /><img src="'.$NewPath.'">';

  }else{

   exit('失败');

   }

 }else{

  exit('不是上传文件');

 }

bool is_uploaded_file ( string $filename )

 

 

move_uploaded_file()

将上传的文件移动到新位置

if(is_uploaded_file($_FILES['bus']['tmp_name'])){

  if( move_uploaded_file($_FILES['bus']['tmp_name'], $NewPath) ){

   echo '上传成功<br /><img src="'.$NewPath.'">';

  }else{

   exit('失败');

   }

 }else{

  exit('不是上传文件');

 }

bool move_uploaded_file ( string $filename , string $destination )

 

 

时间函数:

函数名

描述

实例

输入

输出

time()

返回当前的 Unix 时间戳

time();

int time ( void )

返回自从 Unix 纪元(格林威治时间 1970 1 1 00:00:00)到当前时间的秒数

mktime()

取得一个日期的 Unix 时间戳

mktime(0, 0, 0, 4, 25, 2012);

int mktime ([ int $hour [, int $minute [, int $second [, int $month [, int $day [, int $year [, int $is_dst ]]]]]]] )

 

date()

格式化一个本地时间/日期

date('Ymd H:i:s');

string date ( string $format [, int $timestamp ] )

20120425 20:45:54

checkdate()

验证一个格里高里日期

if(checkdate(6,31,2012)){

 echo '成立';

}else{

 echo '不成立';

}

bool checkdate ( int $month , int $day , int $year )

如果给出的日期有效则返回 TRUE,否则返回 FALSE

date_default_timezone_set()

设定用于一个脚本中所有日期时间函数的默认时区

date_default_timezone_set('PRC');

bool date_default_timezone_set ( string $timezone_identifier )

 

getdate()

取得日期/时间信息

$t=getdate();

var_dump($t);

array getdate ([ int $timestamp ] )

返回一个根据 timestamp 得出的包含有日期信息的结合数组。如果没有给出时间戳则认为是当前本地时间

strtotime()

将任何英文文本的日期时间描述解析为 Unix 时间戳

echo strtotime("now");

echo strtotime("10 September 2000");

echo strtotime("+1 day");

echo strtotime("+1 week");

echo strtotime("+1 week 2 days 4 hours 2 seconds");

echo strtotime("next Thursday");

echo strtotime("last Monday");

int strtotime ( string $time [, int $now ] )

 

microtime()

返回当前 Unix 时间戳和微秒数

$start=microtime(true);

sleep(3);

$stop=microtime(true);

echo $stop-$start;

mixed microtime ([ bool $get_as_float ] )

 

正则-元字符:

元字符

含义

等价于

匹配范围

 

 

\d

匹配任意一个十进制数字

[0-9]

\D

匹配除十进制数字以外的任意数字

[^0-9]

\s

匹配空白字符

[\n\f\r\t\v]

\S

匹配除空白字符以外的任意一个字符

[^\n\f\r\t\v]

\w

匹配任意一个数字、字母和下划线

[0-9a-zA-Z_]

\W

匹配除字母、数字和下划线以外的任意字符

[^0-9a-zA-Z_]

[]

1)用来表示范围。  2)匹配任意一个中括号中定义的原子

 

[^]

中括号里面的^(抑扬符):表示匹配任意一个除中括号里面定义的原子

 

限定次数

 

 

*

匹配0次、1次或多次其前的原子

{0,}

+

匹配1次或多次其前的原子

{1,}

?

匹配0次或1次其前的原子

{0,1}

{n}

表示其前的原子正好出现n

 

{n,}

表示其前的原子至少出现n次,最多不限制

 

{m,n}

表示其前的原子最少出现m次,最多出现n

 

其它

 

 

.

匹配除换行符(\n)以外的任意字符windows下还匹配\f\r

 

|

两个或多个分支选择【优先级最低】

 

^

匹配输入字符的开始位置

 

$

匹配输入字符的结束位置

 

\b

匹配词边界

 

\B

匹配非词边界

 

()

1)模式单元,把多个小原子组成一个大原子。2)可以改变优先级

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值