一些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(); # 预定义字符(<>'"&)转 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视频教程》

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











PHP 関数を通じて画像の遅延読み込み効果を最適化するにはどうすればよいですか?インターネットの発展に伴い、Web ページ内の画像の数が増加し、ページの読み込み速度に圧力がかかっています。ユーザーエクスペリエンスを向上させ、読み込み時間を短縮するために、画像の遅延読み込みテクノロジーを使用できます。画像の遅延読み込みにより、画像の読み込みが遅れる可能性があります。画像は、ユーザーが表示領域までスクロールしたときにのみ読み込まれるため、ページの読み込み時間が短縮され、ユーザー エクスペリエンスが向上します。 PHP Web ページを作成する場合、いくつかの関数を作成することで画像の遅延読み込み効果を最適化できます。詳細は以下

PHP 関数を使用してメモリ使用量を削減する方法 開発において、メモリ使用量は非常に重要な考慮事項です。プログラムで大量のメモリが使用されると、速度が低下したり、プログラムがクラッシュしたりする可能性があります。したがって、メモリ使用量を合理的に管理し削減することは、すべての PHP 開発者が注意を払うべき問題です。この記事では、PHP 関数を通じてメモリ使用量を削減するいくつかの方法を紹介し、読者の参考となる具体的なコード例を示します。 PHP で変数を解放するには、unset() 関数を使用します。変数が不要になった場合は、次を使用します。

PHPDeprecated: Functionereg_replace()isdeprecated-Solution PHP で開発する場合、一部の関数が非推奨と宣言されるという問題によく遭遇します。これは、最新の PHP バージョンでは、これらの関数が削除または置き換えられる可能性があることを意味します。一般的な例の 1 つは ereg_replace() 関数です。 ereg_replace

PHP 関数と Flutter 関数の主な違いは、宣言、構文、戻り値の型です。 PHP 関数は暗黙的な戻り値の型変換を使用しますが、Flutter 関数は ? を通じてオプションのパラメータを指定できますが、Flutter 関数は必須パラメータと [] を使用して名前付けパラメータを渡します。 Flutter 関数は、{} を使用して名前付きパラメータを指定します。

PHPの画像処理関数は、画像の加工・編集に特化した関数群であり、開発者に豊富な画像処理機能を提供します。これらの機能を通じて、開発者は画像のトリミング、拡大縮小、回転、透かしの追加などの操作を実装して、さまざまな画像処理のニーズを満たすことができます。まずはPHPの画像処理関数を使って画像の切り抜き機能を実現する方法を紹介します。 PHP には、画像のトリミングに使用できる imagecrop() 関数が用意されています。トリミング領域の座標とサイズを渡すことで、画像をトリミングできます

PHP 関数の紹介: strtr() 関数 PHP プログラミングにおいて、strtr() 関数は非常に便利な文字列置換関数です。文字列内の指定した文字または文字列を他の文字または文字列に置き換えるのに使用されます。この記事では、strtr() 関数の使用法を紹介し、具体的なコード例をいくつか示します。 strtr() 関数の基本構文は次のとおりです。 strtr(string$str, array$replace) ここで、$str は置換される元の単語です。

PHP 関数には他の言語の関数との類似点がありますが、いくつかの独自の機能もあります。構文的には、PHP 関数は function で宣言され、JavaScript は function で宣言され、Python は def で宣言されます。パラメータと戻り値の点では、PHP 関数はパラメータを受け入れて値を返します。JavaScript と Python にも同様の関数がありますが、構文が異なります。スコープに関しては、PHP、JavaScript、Python の関数はすべてグローバル スコープまたはローカル スコープを持ち、グローバル関数にはどこからでもアクセスできますが、ローカル関数には宣言スコープ内でのみアクセスできます。

さまざまな PHP 関数のパフォーマンスは、アプリケーションの効率にとって非常に重要です。パフォーマンスの良い関数には echo や print などがありますが、str_replace、array_merge、file_get_contents などの関数のパフォーマンスは低くなります。たとえば、str_replace 関数は文字列の置換に使用され、中程度のパフォーマンスを発揮しますが、sprintf 関数は文字列の書式設定に使用されます。パフォーマンス分析によると、1 つの例の実行にかかる時間はわずか 0.05 ミリ秒であり、関数が適切に実行されることが証明されています。したがって、関数を賢く使用すると、アプリケーションをより高速かつ効率的に実行できます。
