検索
ホームページバックエンド開発PHPチュートリアル一些PHP基本常用函数(分类汇总)

一些PHP基本常用函数(分类汇总)

Jun 13, 2016 am 10:40 AM
PHP関数

本篇文章给大家整理了常用的一些函数,并进行了分类,希望对大家有所帮助!

一些PHP基本常用函数(分类汇总)

一、数组函数

#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(); # 预定义字符(<>&#39;"&)转 html 实体

	htmlspecialchars_decode(); # 把预定义 html 实体(&amp; &quot; &#39; &lt; &gt;) 转为字符

	nl2br(); # \n 转为 <br> 标签
	
	strip_tags(); # 去除字符串中的 html 标签

	addslashes(); # 指定预定义字符(<>&#39;"&)前添加反斜线

	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(&#39;now&#39;);

strtotime(&#39;+1 day&#39;);

strtotime(&#39;+1 week 2 days 3 hours 4 seconds&#39;);

strtotime(&#39;next Monday&#39;);

strtotime(&#39;last Monday&#39;);

                 

推荐学习:《PHP视频教程

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
誇大広告を超えて:今日のPHPの役割の評価誇大広告を超えて:今日のPHPの役割の評価Apr 12, 2025 am 12:17 AM

PHPは、特にWeb開発の分野で、最新のプログラミングで強力で広く使用されているツールのままです。 1)PHPは使いやすく、データベースとシームレスに統合されており、多くの開発者にとって最初の選択肢です。 2)動的コンテンツ生成とオブジェクト指向プログラミングをサポートし、Webサイトを迅速に作成および保守するのに適しています。 3)PHPのパフォーマンスは、データベースクエリをキャッシュおよび最適化することで改善でき、その広範なコミュニティと豊富なエコシステムにより、今日のテクノロジースタックでは依然として重要になります。

PHPの弱い参照は何ですか、そしていつ有用ですか?PHPの弱い参照は何ですか、そしていつ有用ですか?Apr 12, 2025 am 12:13 AM

PHPでは、弱い参照クラスを通じて弱い参照が実装され、ガベージコレクターがオブジェクトの回収を妨げません。弱い参照は、キャッシュシステムやイベントリスナーなどのシナリオに適しています。オブジェクトの生存を保証することはできず、ごみ収集が遅れる可能性があることに注意する必要があります。

PHPで__invoke Magicメソッドを説明してください。PHPで__invoke Magicメソッドを説明してください。Apr 12, 2025 am 12:07 AM

\ _ \ _ Invokeメソッドを使用すると、オブジェクトを関数のように呼び出すことができます。 1。オブジェクトを呼び出すことができるように\ _ \ _呼び出しメソッドを定義します。 2。$ obj(...)構文を使用すると、PHPは\ _ \ _ Invokeメソッドを実行します。 3。ロギングや計算機、コードの柔軟性の向上、読みやすさなどのシナリオに適しています。

同時性については、PHP 8.1の繊維を説明します。同時性については、PHP 8.1の繊維を説明します。Apr 12, 2025 am 12:05 AM

繊維はPhp8.1で導入され、同時処理機能が改善されました。 1)繊維は、コルーチンと同様の軽量の並行性モデルです。 2)開発者がタスクの実行フローを手動で制御できるようにし、I/O集約型タスクの処理に適しています。 3)繊維を使用すると、より効率的で応答性の高いコードを書き込むことができます。

PHPコミュニティ:リソース、サポート、開発PHPコミュニティ:リソース、サポート、開発Apr 12, 2025 am 12:04 AM

PHPコミュニティは、開発者の成長を支援するための豊富なリソースとサポートを提供します。 1)リソースには、公式のドキュメント、チュートリアル、ブログ、LaravelやSymfonyなどのオープンソースプロジェクトが含まれます。 2)StackOverFlow、Reddit、およびSlackチャネルを通じてサポートを取得できます。 3)開発動向は、RFCに従うことで学ぶことができます。 4)コミュニティへの統合は、積極的な参加、コード共有への貢献、および学習共有への貢献を通じて達成できます。

PHP対Python:違いを理解しますPHP対Python:違いを理解しますApr 11, 2025 am 12:15 AM

PHP and Python each have their own advantages, and the choice should be based on project requirements. 1.PHPは、シンプルな構文と高い実行効率を備えたWeb開発に適しています。 2。Pythonは、簡潔な構文とリッチライブラリを備えたデータサイエンスと機械学習に適しています。

PHP:それは死にかけていますか、それとも単に適応していますか?PHP:それは死にかけていますか、それとも単に適応していますか?Apr 11, 2025 am 12:13 AM

PHPは死にかけていませんが、常に適応して進化しています。 1)PHPは、1994年以来、新しいテクノロジーの傾向に適応するために複数のバージョンの反復を受けています。 2)現在、電子商取引、コンテンツ管理システム、その他の分野で広く使用されています。 3)PHP8は、パフォーマンスと近代化を改善するために、JITコンパイラおよびその他の機能を導入します。 4)Opcacheを使用してPSR-12標準に従って、パフォーマンスとコードの品質を最適化します。

PHPの未来:適応と革新PHPの未来:適応と革新Apr 11, 2025 am 12:01 AM

PHPの将来は、新しいテクノロジーの傾向に適応し、革新的な機能を導入することで達成されます。1)クラウドコンピューティング、コンテナ化、マイクロサービスアーキテクチャに適応し、DockerとKubernetesをサポートします。 2)パフォーマンスとデータ処理の効率を改善するために、JITコンパイラと列挙タイプを導入します。 3)パフォーマンスを継続的に最適化し、ベストプラクティスを促進します。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール