### PHP开发中常用处理函数详解 #### 一、字符串处理函数 **1. implode()** - **功能**:将数组中的元素合并成一个字符串,中间可以用指定字符分隔。 - **参数**: - `string $glue`:用于连接各元素的粘合符。 - `array $pieces`:需要连接的数组。 - **示例**:`implode(',', ['apple', 'banana', 'orange'])` 结果为 "apple,banana,orange"。 **2. explode()** - **功能**:根据分隔符把字符串切分为数组。 - **参数**: - `string $delimiter`:作为分隔符的字符串。 - `string $string`:待分割的字符串。 - **示例**:`explode(',', 'apple,banana,orange')` 结果为 `['apple', 'banana', 'orange']`。 **3. trim()** - **功能**:删除字符串两端的空白字符或其他预定义字符。 - **参数**: - `string $string`:需要修剪的字符串。 - **示例**:`trim(' apple ')` 结果为 "apple"。 **4. substr()** - **功能**:返回字符串的一部分。 - **参数**: - `string $string`:原始字符串。 - `int $start`:开始截取的位置。 - `int $length`:截取的长度(可选)。 - **示例**:`substr('hello world', 6, 5)` 结果为 "world"。 **5. str_replace()** - **功能**:替换字符串中的一部分。 - **参数**: - `string $search`:要查找的字符串。 - `string $replace`:用作替换的新字符串。 - `string $subject`:被操作的原始字符串。 - **示例**:`str_replace('world', 'universe', 'hello world')` 结果为 "hello universe"。 **6. ucfirst()** - **功能**:将字符串首字母转换为大写。 - **参数**: - `string $string`:需要转换的字符串。 - **示例**:`ucfirst('hello world')` 结果为 "Hello world"。 **7. ucwords()** - **功能**:将字符串中每个单词的首字母转换为大写。 - **参数**: - `string $string`:需要转换的字符串。 - **示例**:`ucwords('hello world')` 结果为 "Hello World"。 **8. strchr()** - **功能**:查找字符串首次出现的位置。 - **参数**: - `string $haystack`:被搜索的字符串。 - `string $needle`:要查找的字符串。 - **示例**:`strchr('hello world', 'o')` 结果为 "o world"。 **9. strlen()** - **功能**:获取字符串的长度。 - **参数**: - `string $string`:需要计算长度的字符串。 - **示例**:`strlen('hello')` 结果为 5。 **10. strcmp()** - **功能**:比较两个字符串。 - **参数**: - `string $str1`:第一个字符串。 - `string $str2`:第二个字符串。 - **示例**:`strcmp('hello', 'hello')` 结果为 0,表示两个字符串相等。 **11. strstr()** - **功能**:查找字符串首次出现的位置并返回剩余部分。 - **参数**: - `string $haystack`:被搜索的字符串。 - `string $needle`:要查找的字符串。 - **示例**:`strstr('hello world', 'world')` 结果为 "world"。 **12. strpos()** - **功能**:查找字符串首次出现的位置并返回索引。 - **参数**: - `string $haystack`:被搜索的字符串。 - `string $needle`:要查找的字符串。 - **示例**:`strpos('hello world', 'world')` 结果为 6。 **13. strtolower()** - **功能**:将字符串中的所有字符转换为小写。 - **参数**: - `string $string`:需要转换的字符串。 - **示例**:`strtolower('HELLO WORLD')` 结果为 "hello world"。 **14. preg_match()** - **功能**:执行正则表达式匹配。 - **参数**: - `string $pattern`:正则表达式。 - `string $subject`:要匹配的字符串。 - `array &$matches`:匹配结果存储的数组。 - **示例**:`preg_match('/hello/', 'hello world', $matches)`,$matches[0] 结果为 "hello"。 **15. preg_replace()** - **功能**:执行一个正则表达式的搜索和替换。 - **参数**: - `string $pattern`:正则表达式。 - `string $replacement`:替换字符串。 - `string $subject`:被操作的原始字符串。 - **示例**:`preg_replace('/\s+/', '-', 'hello world')` 结果为 "hello-world"。 #### 二、数组处理函数 **1. count()** - **功能**:统计数组中元素的数量。 - **参数**: - `array $array`:需要统计的数组。 - **示例**:`count(['apple', 'banana', 'orange'])` 结果为 3。 **2. is_array()** - **功能**:检查变量是否为数组。 - **参数**: - `mixed $var`:需要检查的变量。 - **示例**:`is_array(['apple', 'banana', 'orange'])` 结果为 true。 **3. sort()** - **功能**:对数组进行排序。 - **参数**: - `array &$array`:需要排序的数组。 - **示例**:`sort(['banana', 'apple', 'orange'])` 结果为 `['apple', 'banana', 'orange']`。 **4. array_unique()** - **功能**:移除数组中的重复值。 - **参数**: - `array $array`:需要去重的数组。 - **示例**:`array_unique([1, 2, 2, 3, 4, 4])` 结果为 `[1, 2, 3, 4]`。 **5. array_push()** - **功能**:向数组末尾添加一个或多个元素。 - **参数**: - `array &$array`:需要添加元素的数组。 - `mixed $values`:要添加的一个或多个元素。 - **示例**:`array_push(['apple'], 'banana', 'orange')` 结果为 `['apple', 'banana', 'orange']`。 **6. array_flip()** - **功能**:交换数组的键和值。 - **参数**: - `array $array`:需要交换的数组。 - **示例**:`array_flip(['apple' => 1, 'banana' => 2])` 结果为 `[1 => 'apple', 2 => 'banana']`。 **7. key()** - **功能**:获取数组当前元素的键。 - **参数**: - `array $array`:需要获取键的数组。 - **示例**:`key(['apple' => 1, 'banana' => 2])` 结果为 "apple"。 **8. reset()** - **功能**:将内部指针指向数组的第一个元素,并返回该元素的值。 - **参数**: - `array $array`:需要重置的数组。 - **示例**:`reset(['apple' => 1, 'banana' => 2])` 结果为 1。 **9. array_chunk()** - **功能**:将数组分割成多维数组。 - **参数**: - `array $input`:需要分割的数组。 - `int $size`:每个子数组的大小。 - **示例**:`array_chunk([1, 2, 3, 4, 5], 2)` 结果为 `[[1, 2], [3, 4], [5]]`。 **10. array_search()** - **功能**:在数组中搜索某个值,返回对应的键名。 - **参数**: - `mixed $value`:需要搜索的值。 - `array $array`:需要搜索的数组。 - **示例**:`array_search(2, [1, 2, 3, 4, 5])` 结果为 1。 **11. array_merge()** - **功能**:合并一个或多个数组。 - **参数**: - `array $array1`:需要合并的第一个数组。 - `array $array2`:需要合并的第二个数组。 - **示例**:`array_merge(['apple' => 1], ['banana' => 2])` 结果为 `['apple' => 1, 'banana' => 2]`。 **12. array_combine()** - **功能**:创建一个新数组,使用一个数组的值作为其键名,另一个数组的值作为其值。 - **参数**: - `array $keys`:键名数组。 - `array $values`:值数组。 - **示例**:`array_combine(['a', 'b'], [1, 2])` 结果为 `['a' => 1, 'b' => 2]`。 **13. array_values()** - **功能**:返回数组中的所有值,忽略键名。 - **参数**: - `array $array`:需要获取值的数组。 - **示例**:`array_values(['a' => 1, 'b' => 2])` 结果为 `[1, 2]`。 **14. array_keys()** - **功能**:返回数组中的所有键名。 - **参数**: - `array $array`:需要获取键名的数组。 - **示例**:`array_keys(['a' => 1, 'b' => 2])` 结果为 `['a', 'b']`。 #### 三、数据库处理函数 **1. mysql_connect()** - **功能**:建立到 MySQL 服务器的连接。 - **参数**: - `string $host`:MySQL 服务器地址。 - `string $username`:用户名。 - `string $password`:密码。 - **示例**:`mysql_connect('localhost', 'root', '')` 结果为 MySQL 连接资源。 **2. mysql_select_db()** - **功能**:选择 MySQL 数据库。 - **参数**: - `string $database`:数据库名称。 - `resource $link_identifier`:MySQL 连接资源。 - **示例**:`mysql_select_db('testdb', $conn)` 结果为 true。 **3. mysql_query()** - **功能**:执行 SQL 语句。 - **参数**: - `string $query`:SQL 语句。 - `resource $link_identifier`:MySQL 连接资源。 - **示例**:`mysql_query("SELECT * FROM users", $conn)` 结果为 MySQL 结果集资源。 **4. mysql_fetch_row()** - **功能**:获取结果集中的一行作为数值索引的数组。 - **参数**: - `resource $result`:MySQL 结果集资源。 - **示例**:`mysql_fetch_row($result)` 结果为 `[1, 'John', 'Doe']`。 **5. mysql_fetch_assoc()** - **功能**:获取结果集中的一行作为关联数组。 - **参数**: - `resource $result`:MySQL 结果集资源。 - **示例**:`mysql_fetch_assoc($result)` 结果为 `['id' => 1, 'name' => 'John', 'last_name' => 'Doe']`。 **6. mysql_fetch_array()** - **功能**:获取结果集中的一行作为索引数组或关联数组。 - **参数**: - `resource $result`:MySQL 结果集资源。 - **示例**:`mysql_fetch_array($result)` 结果为 `['id' => 1, 0 => 1, 'name' => 'John', 1 => 'John', 'last_name' => 'Doe', 2 => 'Doe']`。 **7. mysql_fetch_object()** - **功能**:获取结果集中的一行作为对象。 - **参数**: - `resource $result`:MySQL 结果集资源。 - **示例**:`mysql_fetch_object($result)` 结果为 `(object) ['id' => 1, 'name' => 'John', 'last_name' => 'Doe']`。 **8. mysql_free_result()** - **功能**:释放结果集内存。 - **参数**: - `resource $result`:MySQL 结果集资源。 - **示例**:`mysql_free_result($result)` 结果为 null。 **9. mysql_num_rows()** - **功能**:获取结果集中行数。 - **参数**: - `resource $result`:MySQL 结果集资源。 - **示例**:`mysql_num_rows($result)` 结果为 5。 **10. mysql_affected_rows()** - **功能**:获取上一次 INSERT、UPDATE、DELETE 等 SQL 操作影响的行数。 - **参数**: - `resource $link_identifier`:MySQL 连接资源。 - **示例**:`mysql_affected_rows($conn)` 结果为 1。 **11. mysql_insert_id()** - **功能**:获取最后一次 INSERT 操作产生的 ID。 - **参数**: - `resource $link_identifier`:MySQL 连接资源。 - **示例**:`mysql_insert_id($conn)` 结果为 10。 #### 四、文件处理函数 **1. file_exists()** - **功能**:检查文件是否存在。 - **参数**: - `string $filename`:文件路径。 - **示例**:`file_exists('example.txt')` 结果为 true。 **2. filesize()** - **功能**:获取文件大小。 - **参数**: - `string $filename`:文件路径。 - **示例**:`filesize('example.txt')` 结果为 1024。 **3. pathinfo()** - **功能**:返回文件路径信息。 - **参数**: - `string $path`:文件路径。 - **示例**:`pathinfo('C:/path/to/example.txt')` 结果为 `['dirname' => 'C:/path/to', 'basename' => 'example.txt', 'extension' => 'txt', 'filename' => 'example']`。 **4. mkdir()** - **功能**:创建目录。 - **参数**: - `string $pathname`:目录路径。 - **示例**:`mkdir('newdir')` 结果为 true。 **5. rmdir()** - **功能**:删除空目录。 - **参数**: - `string $dirname`:目录路径。 - **示例**:`rmdir('newdir')` 结果为 true。 **6. fopen()** - **功能**:打开文件。 - **参数**: - `string $filename`:文件路径。 - `string $mode`:模式,例如 "r" 表示只读,"w" 表示写入。 - **示例**:`fopen('example.txt', 'r')` 结果为文件句柄。 **7. fclose()** - **功能**:关闭文件。 - **参数**: - `resource $handle`:文件句柄。 - **示例**:`fclose($fp)` 结果为 true。 **8. fwrite()** - **功能**:写入文件。 - **参数**: - `resource $handle`:文件句柄。 - `string $string`:要写入的内容。 - `int $length`:写入的字节数。 - **示例**:`fwrite($fp, 'Hello World!')` 结果为 12。 **9. file_put_contents()** - **功能**:写入或追加文件。 - **参数**: - `string $filename`:文件路径。 - `string $data`:要写入的内容。 - **示例**:`file_put_contents('example.txt', 'Hello World!')` 结果为 12。 **10. file_get_contents()** - **功能**:读取文件内容。 - **参数**: - `string $filename`:文件路径。 - **示例**:`file_get_contents('example.txt')` 结果为 "Hello World!"。 **11. fread()** - **功能**:从文件指针读取数据。 - **参数**: - `resource $handle`:文件句柄。 - `int $length`:要读取的字节数。 - **示例**:`fread($fp, 5)` 结果为 "Hello"。 **12. fgets()** - **功能**:从文件指针读取一行。 - **参数**: - `resource $handle`:文件句柄。 - `int $length`:最大读取长度。 - **示例**:`fgets($fp, 10)` 结果为 "Hello Worl"。 **13. fgetc()** - **功能**:从文件指针读取一个字符。 - **参数**: - `resource $handle`:文件句柄。 - **示例**:`fgetc($fp)` 结果为 "H"。 **14. file()** - **功能**:读取整个文件到数组中。 - **参数**: - `string $filename`:文件路径。 - **示例**:`file('example.txt')` 结果为 `['Hello World!', 'This is an example.']`。 **15. readfile()** - **功能**:输出文件内容。 - **参数**: - `string $filename`:文件路径。 - **示例**:`readfile('example.txt')` 输出 "Hello World!"。 **16. copy()** - **功能**:复制文件。 - **参数**: - `string $source`:源文件路径。 - `string $destination`:目标文件路径。 - **示例**:`copy('example.txt', 'example_copy.txt')` 结果为 true。 **17. unlink()** - **功能**:删除文件。 - **参数**: - `string $filename`:文件路径。 - **示例**:`unlink('example.txt')` 结果为 true。 **18. rename()** - **功能**:重命名或移动文件。 - **参数**: - `string $oldname`:旧文件路径。 - `string $newname`:新文件路径。 - **示例**:`rename('example.txt', 'example_new.txt')` 结果为 true。 #### 五、对象处理函数 **1. get_object_vars()** - **功能**:返回对象的所有公共属性。 - **参数**: - `object $object`:需要获取属性的对象。 - **示例**:如果有一个对象 `$obj->name = 'John'; $obj->age = 30;`,那么 `get_object_vars($obj)` 结果为 `['name' => 'John', 'age' => 30]`。 以上就是PHP开发中常用的处理函数总结,包括字符串处理函数、数组处理函数、数据库处理函数、文件处理函数以及对象处理函数。这些函数是PHP编程的基础,对于初学者来说非常重要,熟练掌握这些函数能够帮助你在实际项目中更高效地解决问题。
数组:【重点1】
implode(分隔,str) 把数组值数据按指定字符连接起来
explode([分隔],arr)按指定规则对一个字符串进行分割,返回值为数组
count(arr) 计算数组中的单元数目或对象中的属性个数
is_array(arr) 检测变量是否是数组
sort(arr) 对数组排序
array_unique(arr)移除数组中重复的值
array_push(arr,str) 将一个或多个单元压入数组的末尾(入栈)
array_flip(arr) 交换数组中的键和值
key(arr)返回数组中当前元素的键名
reset(arr)数组的内部指针指向第一个单元
array_chunk() 将一个数组分割成多个
array_search() 在数组中搜索给定的值,如果成功则返回相应的键名
array_merge()合并一个或多个数组
array_combine() 创建一个数组,用一个数组的值作为其键名,另一个数组的值作为其值
array_values()返回数组中所有的值
array_keys() 返回数组中所有的键名
字符串:【重点2】
explode(分隔,str)按指定规则对一个字符串进行分割,返回值为数组
implode(分隔,str) 把数组值数据按指定字符连接起来
trim(str) 消除字符串两边的空格
substr(str,start,length) 截取指定字符串中指定长度的字符////////////////////
str_replace(search,replace,str) 字符串替换
ucfirst(str) 将字符串第一个字符大写
ucwords(str) 将字符串每个字的第一个字母大写
- 粉丝: 7
- 资源: 6
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助