10、PHP常见函数
PHP常见函数
https://www.php.net/manual/zh/function.XXX.php
一、字符串相关
1、strrev——反转字符串
1 | strrev ( string $string ) : string |
2、str_rot13——对字符串执行ROT13转换
1 | str_rot13 ( string $str ) : string |
对 str
参数执行 ROT13 编码并将结果字符串返回。
ROT13 编码简单地使用字母表中后面第 13 个字母替换当前字母,同时忽略非字母表中的字符。编码和解码都使用相同的函数,传递一个编码过的字符串作为参数,将得到原始字符串。
3、pathinfo — 返回文件路径的信息
1 | pathinfo ( string $path [, int $options = PATHINFO_DIRNAME | PATHINFO_BASENAME | PATHINFO_EXTENSION | PATHINFO_FILENAME ] ) : mixed |
pathinfo() 返回一个关联数组包含有 path
的信息。返回关联数组还是字符串取决于 options
。
4、implode — 将一个一维数组的值转化为字符串
1 | implode ( string $glue , array $pieces ) : string |
用 glue
将一维数组的值连接为一个字符串。
5、explode — 使用一个字符串分割另一个字符串为数组
1 | explode ( string $delimiter , string $string [, int $limit ] ) : array |
此函数返回由字符串组成的数组,每个元素都是 string
的一个子串,它们被字符串 delimiter
作为边界点分割出来。
二、文件相关
1、fsockopen——打开一个网络连接或者一个Unix套接字连接
1 | fsockopen ( string $hostname [, int $port = -1 [, int &$errno [, string &$errstr [, float $timeout = ini_get("default_socket_timeout") ]]]] ) : resource |
2、file_get_contents —— 将整个文件读入一个字符串
1 | file_get_contents ( string $filename [, bool $use_include_path = false [, resource $context [, int $offset = -1 [, int $maxlen ]]]] ) : string |
3、curl_exec — 执行 cURL 会话
1 | curl_exec ( resource $ch ) : mixed |
cURL是一个利用URL语法在命令行下工作的文件传输工具。支持的协议非常多,不同的curl版本支持不同的协议。
4、file_exists — 检查文件或目录是否存在
1 | file_exists ( string $filename ) : bool |
5、getimagesize — 取得图片格式信息
1 | getimagesize ( string $filename [, array &$imageinfo ] ) : array |
返回一个具有七个单元的数组。
- 索引 0 给出的是图像宽度的像素值
- 索引 1 给出的是图像高度的像素值
- 索引 2 给出的是图像的类型,返回的是数字,其中1 = GIF,2 = JPG,3 = PNG,4 = SWF,5 = PSD,6 = BMP,7 = TIFF(intel byte order),8 = TIFF(motorola byte order),9 = JPC,10 = JP2,11 = JPX,12 = JB2,13 = SWC,14 = IFF,15 = WBMP,16 = XBM。配合image_type_to_extension函数可直接获得对应类型的字符串。
- 索引 3 给出的是一个宽度和高度的字符串,可以直接用于 HTML 的
标签 - 索引 bits 给出的是图像的每种颜色的位数,二进制格式
- 索引 channels 给出的是图像的通道值,RGB 图像默认是 3
- 索引 mime 给出的是图像的 MIME 信息,此信息可以用来在 HTTP Content-type 头信息中发送正确的信息,如: header(“Content-type: image/jpeg”);
6、scandir — 列出指定路径中的文件和目录
1 | scandir ( string $directory [, int $sorting_order [, resource $context ]] ) : array |
7、unlink — 删除文件
1 | unlink ( string $filename [, resource $context ] ) : bool |
三、编码相关
1、ord — 转换字符串第一个字节为 0-255 之间的ASCII值
1 | ord ( string $string ) : int |
2、unpack—unpack — Unpack data from binary string
1 | unpack ( string $format , string $data [, int $offset = 0 ] ) : array |
关于format选项可以看https://www.php.net/manual/zh/function.pack.php。例如:`@unpack(“C2chars”, $bin);`会将二进制$bin变量解包为无符号字符,并且占位2位起,不够两位补零(比如\0x01 被解包为01, \0x70 解包为112)。最后的解包结果会存储到一个数组中,数组的key是chars1、chars2…以此类推。这就是C 2 chars 格式的含义。
3、json_decode — 对 JSON 格式的字符串进行解码
1 | json_decode ( string $json [, bool $assoc = FALSE [, int $depth = 512 [, int $options = 0 ]]] ) : mixed |
接受一个 JSON 编码的字符串并且把它转换为 PHP 变量 ,当assoc参数为 TRUE
时,将返回 array 而非 object 。
四、数值相关
1、intval — 获取变量的整数值
1 | intval ( mixed $var [, int $base = 10 ] ) : int |
通过使用指定的进制 base
转换(默认是十进制),返回变量 var
的 integer 数值。 intval() 不能用于 object,否则会产生 E_NOTICE
错误并返回 1。
2、end — 将数组的内部指针指向最后一个单元
1 | end ( array &$array ) : mixed |
end() 将 array
的内部指针移动到最后一个单元并返回其值。例如:echo end($array_a);
五、环境相关
可以配置的选项:https://www.php.net/manual/zh/ini.list.php
open_basedir:指定只有某个目录树可以被PHP访问。open_basedir=/tmp/:/proc/:/you_web_path
ini_set — 为一个配置选项设置值
1 | ini_set ( string $varname , string $newvalue ) : string |
设置指定配置选项的值。这个选项会在脚本运行时保持新的值,并在脚本结束时恢复。 成功时返回旧的值,失败时返回 **FALSE
**。