本篇文章给大家整理了常用的一些函数,并进行了分类,希望对大家有所帮助!
一、数组函数
#1. 数组的创建 array(); # 生成空数组 array_combine($x, $y); # 生成数组, 用 $x 数组的值作为新数组的 键名, $y 数组的值做为新数组的 值#2. 数组合并与拆分 array_merge($x, $y, $z); # 数组合并 array_slice($array, $start, $length); # 自定义位置截取#3. 数组的比较 array_diff($x, $y, $z); # 返回差集 array_intersect($x, $y, $z); # 返回交集#4. 数组的查找与替换 array_search($search, $array); # 查找值, 存在返回键,不存在返回 false array_splice($search, $start, $length, $new); # 从 $search 数组中移除, 并用 $new 中新元素取代 array_sum(); # 返回数组中所有值的总和 array_key_exists($key, $array); # 检查 $key 的键名是否在 $array 中 in_array($val, $array); # 检查 $val 的值是否在 $array 中#5. 数组键值操作 count(); # 获取数组中元素的个数 array_unique(); # 数组值去重,删除重复元素,返回剩余的数组 array_rand($array, $length); # 从数组中随机抽取 $length 个元素, 注意: 返回的是 键名 array_keys(); # 将数组中所有的键,组成新数组 array_values(); # 将数组中所有的值,组成新数组 array_flip(); # 将数组的键与值反转 array_reverse(); # 返回翻转顺序的数组 array_count_values(); # 统计数组中所有值出现的次数 ['A'=>3, 'B'=>4] shuffle($array); # 将数组中的元素打乱,重新随机排列#6. 数组指针操作 key(); # 返回数组内部指针当前元素的键名 current(); # 返回数组内部指针当前元素的值 next(); # 把指向当前元素的指针后移一位,并返回后移后的元素的值 prev(); # 把指向当前元素的指针前移一位,并返回前移后的元素的值 end(); # 把数组指针指向最后一个元素,并返回该元素的值 reset(); # 把数组指针指向第一个元素,并返回该元素的值 array_shift(); # 删除数组中第一个元素,并返回被删除元素的值 array_unshift($array, $value); # 在数组开头插入一个或多个元素 array_pop(); # 删除数组中最后一个元素。 array_push($array, $value); # # 在数组结尾插入一个或多个元素 list(); # 用数组中的元素为一组变量赋值 例: list($a, $b, $c) = ['a', 'b', 'c'];#7. 数组排序 sort(); # 按升序对数组的值排序,不保留原键名 rsort(); # 按降序对数组的值排序,不保留原键名 asort(); # 按升序对数组的值排序,保留原键名 arsort(); # 按降序对数组的值排序,保留原键名 ksort(); # 按升序对数组的键排序,保留原键名 krsort(); # 按降序对数组的键排序,保留原键名 natsort(); # 用自然顺序算法对数组中的值排序,保留原键名 natcasesort(); # 用自然顺序算法对数组中的值排序,保留原键名,该函数不区分大小写
二、数学函数
abs(); # 返回数的绝对值 3.2 ceil(); # 向上取整 floor(); # 向下取整 fmod(5.4, 1.3); # 浮点数取余 0.2 max(3, 1, 5, 7); # 最大值 7 min(4, 2, 6, 8); # 最小值 2 mt_rand(1, 10); # 我这次的随机值为 382819 pow(x, y); # 返回 x 的 y 次方 例: pow(2,2); 输出 4 pi(); # 获取圆周率值, 返回值精度由 php.ini 中的 precision 指令控制, 3.1415926535898 round(); # 浮点数四舍五入 sqrt(16); # 返回数的平方根 4
三、字符函数
# 1. 字符串统计 strlen(); # 统计字符串长度, 中文占 3 个字节 mb_strlen(); # 统计字符串长度, 中文占 1 个字节 str_word_count($string, $format, $characters); # 统计字符串中单词的数量, 更多用法请查阅手册 # 2. 字符串查找与替换 str_replace($new, $old, $string); # 字符串替换操作, 区分大小写 str_ireplace($new, $old, $string); # 字符串替换操作, 不区分大小写 substr_replace($string, $replace, $start, $length); # 把一部分替换为另一个字符串 substr_count($string, $search); # 统计一个字符串在另一字符串中出现的次数 similar_text($string1, $string2, $percent); # 返回两个字符串字符串相同数量或相同百分比值 strstr($string, $search, $before=false); # 查找字符串在另一个字符串中第一次出现的位置,并返回从该位置到字符串结尾或字符串开始的所有字符, 无则返回 FALSE, 区分大小写 stristr($string, $search, $before=false); # 查找字符串在另一个字符串中第一次出现的位置,并返回从该位置到字符串结尾或字符串开始的所有字符, 无则返回 FALSE, 不区分大小写 strchr($string, $search, $before=false); # strstr(); 的别名 strrchr($string, $search); # 查找字符串在另一个字符串中最后一次出现的位置,并返回从该位置到字符串结尾的所有字符, 无则返回 FALSE, 区分大小写 strpos($string, $search, $start); # 返回字符串在另一字符串首次出现的位置, 区分大小写 stripos($string, $search, $start); # 返回字符串在另一字符串首次出现的位置, 不区分大小写 strrpos($string, $search, $start); # 返回字符串在另一字符串最后一次出现的位置, 区分大小写 strripos($string, $search, $start); # 返回字符串在另一字符串最后一次出现的位置, 不区分大小写 strspn($string, $charlist, $start, $length); # 返回在 $string 中包含 $charlist 参数中指定的字符数目。 strcspan($string, $char, $start, $length); # 函数返回在找到任何指定的字符之前,在字符串查找的字符数(包括空格)。 # 3. 字符分割及拼接 explode($separator, $string); # 按 $separator 分隔 $string , 打散后重新组装成数组 implode($separator, $array); # 用 $separator 分隔数组中的每个值, 转换成新字符串 substr($string, $start, $length); # 中文占 3 个字节, 在 $string 字符串中, 从 $start 位置开始, 返回 $length 长度的字符串, $length 默认直到字符串结尾 mb_substr($string, $start, $length); # 中文占 1 个字节, 在 $string 字符串中, 从 $start 位置开始, 返回 $length 长度的字符串, $length 默认直到字符串结尾 chunk_split($string, $length, $separator); # 将字符串按 $length 长度分割成小块, 以 $separator 分隔, 返回新字符串 str_split($string, $length); # 将字符串按 $length 长度分割成小块, 返回数组 # 4. 字符串比较 (两个字符串相同返回 0) strcmp($string1, $string2); # 比较两个字符串, 区分大小写 strcasecmp($string1, $string2); # 比较两个字符串, 不区分大小写 strncmp($string1, $string2, $length); # 比较两个字符串前 $length 长度, 区分大小写 strncasecmp($string1, $string2, $length); # 比较两个字符串前 $length 长度, 不区分大小写 strnatcmp($string1, $string2); # 使用"自然"算法来比较两个字符串, 区分大小写 strnatcmp($string1, $string2); # 使用"自然"算法来比较两个字符串, 不区分大小写 # 5. 大小写转换 strtolower($string); # 全部字符串转为小写 strtoupper($string); # 全部字符串转为大写 lcfirst($string); # 字符串首字母小写 ucfirst($string); # 字符串首字母大写 ucwords($string); # 字符串每个单词首字母转为大写 # 6. 生成与转化 strrev(); # 反转字符串 str_repeat($string, $multiplier); # 重复字符串 $multiplier 次 str_pad($string, $length, $pad_string, $pad_type); # 把字符串填充指定长度, $pad_string 为填充的字符, $pad_type 为类型 (STR_PAD_RIGHT: 向右填充(默认) STR_PAD_LEFT: 向左填充 STR_PAD_BOTH: 两侧填充) wordwrap($string, $length); # 把字符串按指定长度折行 str_shuffle(); # 随机打乱字符串 number_format(); # 千位格式化数字 parse_str(); # 把字符串解析成变量 例: parse_str("name=Chon&height=175"); trim($string, $char); # 去除首尾处的 $char 字符, $char 默认为空格 ltrim($string, $char) # 去除开头处的 $char 字符, $char 默认为空格 rtrim($string, $char) # 去除结尾处的 $char 字符, $char 默认为空格 # 7. html 标签相关联函数 htmlentities(); # 把字符转为 html 实体 html_entity_decode(); # 把 html 实体转为字符 htmlspecialchars(); # 预定义字符(<>'"&)转 html 实体 htmlspecialchars_decode(); # 把预定义 html 实体(& " ' < >) 转为字符 nl2br(); # \n 转为 <br> 标签 strip_tags(); # 去除字符串中的 html 标签 addslashes(); # 指定预定义字符(<>'"&)前添加反斜线 stripslashes(); # 删除由 addslashes() 添加的反斜线 addcslashes($string, $char); # 在 $string 字符串中, 在 $char 的指定字符前添加反斜线 stripcslashes(); # 删除由 addcslashes() 添加的反斜线 quotemeta(); # 在字符串中预定义的字符(.\+*?[]^$())前添加反斜线 chr(); # 返回不同 ASCII 值的字符 ord(); # 返回字符串中第一个字符的 ASCII 值
四、文件函数
# 打开文件或 URL, 更多查看手册: https://www.php.net/manual/en/function.fopen fopen($filename, $mode, $include_path, $context);$mode 为访问类型, 以下为可能的值
“r” (只读方式打开,将文件指针指向文件头)
“r+” (读写方式打开,将文件指针指向文件头)
“w” (写入方式打开,清除文件内容,如果文件不存在则尝试创建之)
“w+” (读写方式打开,清除文件内容,如果文件不存在则尝试创建之)
“a” (写入方式打开,将文件指针指向文件末尾进行写入,如果文件不存在则尝试创建之)
“a+” (读写方式打开,通过将文件指针指向文件末尾进行写入来保存文件内容)
“x” (创建一个新的文件并以写入方式打开,如果文件已存在则返回 FALSE 和一个错误)
“x+” (创建一个新的文件并以读写方式打开,如果文件已存在则返回 FALSE 和一个错误)
fclose(); # 关闭已打开的文件指针 # 文件属性 clearstatcache(); # 消除运行结果的缓存 file_exists(); # 检查文件或目录是否存在 filesize(); # 取得文件大小 filectime(); # 获取文件创建时间 filemtime(); # 获取文件修改时间 fileatime(); # 获取文件上次访问时间 is_readable(); # 检查文件是否可读 is_writable(); # 检查文件是否可写 is_executable(); # 检查文件是否可执行 is_file(); # 检查文件是否为常规文件 stat(); # 获取文件大部分信息 详情看手册: https://www.php.net/manual/en/function.stat # 文件操作 file_get_contents(); # 将整个文件读入一个字符串 file_put_contents($file, $data, $mode); # 将一个字符串写入文件 fwrite($filename, $string, $length); # 将 $string 写入文件, $length 为最大写入字节数 fread($filename, $length); # 读取打开的文件, $length 为最大读取字节数 feof(); # 检查文件指针是否为结束位置 fgets(); # 从文件的指针中读取一行返回 fgetc(); # 从文件的指针中读取单个字符返回 file(); # 把文件内容读入一个数组中 readfile(); # 读取一个文件,将文件内容写入到输出缓冲中。 ftell(); # 返回文件指针当前的位置 fseek($file, $offset); # 定位文件指针到某个位置 rewind(); # 将文件指针指向文件的开头 flock($file, $lock); # 锁定或释放文件 # 文件上传下载 is_uploaded_file(); # 判断文件是否是通过 HTTP POST 上传 move_uploaded_file(); # 将上传的文件移动至新位置
五、目录函数
basename($path, $suffix); # 返回路径中的文件名部分, 如果指定 $suffix , 则不显示扩展名 dirname(); # 返回路径中的目录部分 pathinfo(); # 返回文件路径的信息 mkdir(); # 新建目录 rmdir(); # 删除目录 unlink(); # 删除文件 copy($file, $to_file); # 拷贝文件 rename($oldname, $newname); # 重命名一个文件或目录 opendir(); # 打开目录句柄 readdir(); # 从目录句柄中读取条目 closedir(); # 关闭目录句柄 rewinddir(); # 倒回目录句柄
六、时间函数
date_default_timezone_set("Asia/Shanghai"); # 设置默认时区, 时区表链接: https://www.php.net/manual/en/timezones.php date_default_timezone_get(); # 获取默认时间值 time(); # 返回当前的 Unix 时间戳 microtime(); # 返回当前 Unix 时间戳的微秒数 date($format, $timestamp); # 格式化一个本地时间/日期 例: date("Y-m-d H:i:s", time()); getdate($timestamp); # 返回时间戳的时间日期的信息, 格式为关联数组 strtotime(); # 将字符串解析为 Unix 时间戳 # strtotime 案例 strtotime('now'); strtotime('+1 day'); strtotime('+1 week 2 days 3 hours 4 seconds'); strtotime('next Monday'); strtotime('last Monday');
推荐学习:《PHP视频教程》

PHP와 Python은 각각 고유 한 장점이 있으며 선택은 프로젝트 요구 사항을 기반으로해야합니다. 1.PHP는 간단한 구문과 높은 실행 효율로 웹 개발에 적합합니다. 2. Python은 간결한 구문 및 풍부한 라이브러리를 갖춘 데이터 과학 및 기계 학습에 적합합니다.

PHP는 죽지 않고 끊임없이 적응하고 진화합니다. 1) PHP는 1994 년부터 새로운 기술 트렌드에 적응하기 위해 여러 버전 반복을 겪었습니다. 2) 현재 전자 상거래, 컨텐츠 관리 시스템 및 기타 분야에서 널리 사용됩니다. 3) PHP8은 성능과 현대화를 개선하기 위해 JIT 컴파일러 및 기타 기능을 소개합니다. 4) Opcache를 사용하고 PSR-12 표준을 따라 성능 및 코드 품질을 최적화하십시오.

PHP의 미래는 새로운 기술 트렌드에 적응하고 혁신적인 기능을 도입함으로써 달성 될 것입니다. 1) 클라우드 컴퓨팅, 컨테이너화 및 마이크로 서비스 아키텍처에 적응, Docker 및 Kubernetes 지원; 2) 성능 및 데이터 처리 효율을 향상시키기 위해 JIT 컴파일러 및 열거 유형을 도입합니다. 3) 지속적으로 성능을 최적화하고 모범 사례를 홍보합니다.

PHP에서, 특성은 방법 재사용이 필요하지만 상속에 적합하지 않은 상황에 적합합니다. 1) 특성은 클래스에서 다중 상속의 복잡성을 피할 수 있도록 수많은 방법을 허용합니다. 2) 특성을 사용할 때는 대안과 키워드를 통해 해결할 수있는 방법 충돌에주의를 기울여야합니다. 3) 성능을 최적화하고 코드 유지 보수성을 향상시키기 위해 특성을 과도하게 사용해야하며 단일 책임을 유지해야합니다.

의존성 주입 컨테이너 (DIC)는 PHP 프로젝트에 사용하기위한 객체 종속성을 관리하고 제공하는 도구입니다. DIC의 주요 이점에는 다음이 포함됩니다. 1. 디커플링, 구성 요소 독립적 인 코드는 유지 관리 및 테스트가 쉽습니다. 2. 유연성, 의존성을 교체 또는 수정하기 쉽습니다. 3. 테스트 가능성, 단위 테스트를 위해 모의 객체를 주입하기에 편리합니다.

SplfixedArray는 PHP의 고정 크기 배열로, 고성능 및 메모리 사용이 필요한 시나리오에 적합합니다. 1) 동적 조정으로 인한 오버 헤드를 피하기 위해 생성 할 때 크기를 지정해야합니다. 2) C 언어 배열을 기반으로 메모리 및 빠른 액세스 속도를 직접 작동합니다. 3) 대규모 데이터 처리 및 메모리에 민감한 환경에 적합하지만 크기가 고정되어 있으므로주의해서 사용해야합니다.

PHP는 $ \ _ 파일 변수를 통해 파일 업로드를 처리합니다. 보안을 보장하는 방법에는 다음이 포함됩니다. 1. 오류 확인 확인, 2. 파일 유형 및 크기 확인, 3 파일 덮어 쓰기 방지, 4. 파일을 영구 저장소 위치로 이동하십시오.

JavaScript에서는 NullCoalescingOperator (??) 및 NullCoalescingAssignmentOperator (?? =)를 사용할 수 있습니다. 1. 2. ??= 변수를 오른쪽 피연산자의 값에 할당하지만 변수가 무효 또는 정의되지 않은 경우에만. 이 연산자는 코드 로직을 단순화하고 가독성과 성능을 향상시킵니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

맨티스BT
Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

ZendStudio 13.5.1 맥
강력한 PHP 통합 개발 환경

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

PhpStorm 맥 버전
최신(2018.2.1) 전문 PHP 통합 개발 도구

SecList
SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.
