* PHP函數就是有一定功能的一些語句組織在一起的一種形式。
* PHP 的真正力量來自它的函數:它擁有超過 1000 個內建的函數。
---
# :-: 系統函數
### 一、字符串函數
**函數**|**描述**
---|---
`strtolower()`|將字符串轉化為小寫
`strtoupper`|將字符串轉化為大寫
`strlen()`|獲取字符串長度
`trim()`|去除字符串首尾處的空白字符(或者其他字符)
`ltrim()`|去除字符串開頭的空白字符
`rtrim()`|去除字符串結尾的空白字符
`str_replace()`|字符串替換
`strpbrk()`|字符串中查找一組字符是否存在
`explode()`|將字符串分割為數組
`implode()`|把數組元素組合為字符串
`md5()`|將字符串進行md5加密
#### 1、`strtolower()`
```php
$str = 'OUYANGKE';
echo strtolower($str);
echo '<hr>';
$str = 'HuangRong';
echo strtolower($str);
```
#### 2、`strtoupper()`
```php
$str = 'ouyangke';
echo strtoupper($str);
echo '<hr>';
$str = 'HuangRong';
echo strtoupper($str);
```
#### 3、`strlen()`
```php
$str = 'ouyangke';
echo strlen($str);
echo '<hr>';
$str = 'HuangRong';
echo strlen($str);
```
#### 4、`trim()` `ltrim()` `rtrim()`
```php
$str = ' ouyangke ';
echo trim($str);
echo '<hr>';
$str = ' HuangRong ';
echo lrim($str);
echo '<hr>';
$str = ' guojing ';
echo rrim($str);
```
#### 5、`str_replace()`
```php
$str = 'ouyangke huangrong guojing';
echo str_replace('ouyangke','歐陽克',$str);
```
#### 6、`strpbrk()`
```php
$str = 'ouyangke huangrong guojing';
echo str_replace($str,'huang');
```
#### 7、`explode()`
```php
$str = 'ouyangke huangrong guojing';
$arr = explode(' ',$str);
```
#### 8、`implode()`
```php
$arr = array(
'歐陽克',
'黃蓉',
'郭靖'
);
echo implode(',',$arr);
```
#### 9、`md5()`
```php
$str = 'ouyangke';
echo md5($str);
```
---
### 二、數組函數
**函數**|**描述**
---|---
`count()`|數組中元素的數量
`array_merge()`|兩個數組合并為一個數組
`in_array()`|數組中是否存在指定的值
`sort()`|對數值數組進行升序排序
`rsort()`|對數值數組進行降序排序
`array_unique()`|移除數組中的重復的值
`array_push()`|將一個或多個元素插入數組的末尾
`array_pop()`|刪除數組中的最后一個元素
#### 1、`count()`
```php
$arr = array(
'歐陽克',
'黃蓉',
'郭靖'
);
echo count($arr);
```
#### 2、`array_merge()`
```php
$arr1 = array(
'歐陽克',
'黃蓉'
);
$arr2 = array(
'郭靖',
'楊康'
);
$arr3 = array_merge($arr1,$arr2);
print_r($arr3);
```
#### 3、`in_array()`
```php
$arr = array(
'歐陽克',
'黃蓉',
'郭靖'
);
echo in_array('歐陽克',$arr);
```
#### 4、`sort()`
```php
$arr = array(
'ouyangke',
'huangrong',
'guojing'
);
sort($arr);
print_r($arr);
```
#### 5、`array_unique()`
```php
$arr = array(
'歐陽克',
'歐陽克',
'黃蓉',
'黃蓉',
'郭靖'
);
$arr = array_unique($arr);
print_r($arr);
```
#### 6、`array_push()`
```php
$arr = array(
'歐陽克',
'黃蓉',
'郭靖'
);
array_push($arr,'楊康');
print_r($arr);
```
#### 7、`array_pop()`
```php
$arr = array(
'歐陽克',
'黃蓉',
'郭靖'
);
array_pop($arr);
print_r($arr);
```
---
### 三、函數分類
**集合名**|**描述**
---|---
`String`|字符串處理函數
`Array`|數組函數允許您訪問和操作數組
`MySQLi`|允許您訪問 MySQL 數據庫服務器
`Date`|服務器上獲取日期和時間
`Filesystem`|允許您訪問和操作文件系統
`Mail`|數學函數能處理 integer 和 float 范圍內的值
`HTTP`|允許您在其他輸出被發送之前,對由 Web 服務器發送到瀏覽器的信息進行操作
|
`Calendar`|日歷擴展包含了簡化不同日歷格式間轉換的函數
`Directory`|允許您獲得關于目錄及其內容的信息
`Error`|允許您對錯誤進行處理和記錄
`Filter`|進行驗證和過濾
`FTP`|通過文件傳輸協議 (FTP) 提供對文件服務器的客戶端訪問
`MySQL`|允許您訪問 MySQL 數據庫服務器
`SimpleXML`|允許您把 XML 轉換為對象
`XML`|允許我們解析 XML 文檔,但無法對其進行驗證
`Zip`|壓縮文件函數允許我們讀取壓縮文件
---
# :-: 自定義方法 (自定義函數)
### 一、方法使用
#### 1、方法聲明 `function`
* 關鍵詞 + 方法名
```php
function a(){
echo '我是a方法';
}
```
#### 2、方法調用
* 在方法外部調用
```php
a();
function a(){
echo '我是a方法';
}
a();
```
#### 3、方法參數
* 參數數量不限制
```php
function a($n1,$n2){
echo $n1 + $n2;
}
a(100,10);
```
* 方法參數可以有默認值,有默認值可以不傳值
```php
function a($n1,$n2=5){
echo $n1 + $n2;
}
a(100);
```
#### 4、方法返回值 `return`
* 方法必須以返回的方式
```php
function a($n1,$n2){
return $n1 * $n2;
}
echo a(100,10);
```
- 序言
- PHP基礎
- 認識PHP
- 環境安裝
- PHP語法
- 流程控制
- PHP數組
- PHP函數
- PHP類與對象
- PHP命名空間
- PHP7新特性
- PHP方法庫
- PHP交互
- 前后端交互
- 項目常規開發流程
- MySQL數據庫
- 會話控制
- Ajax分頁技術
- 細說函數
- 類與對象
- 對象進階
- 類與對象進階
- OOP面向對象
- 設計模式
- 路由與模板引擎
- 異常類
- PHP爬蟲
- PHP抓取函數
- PHP匹配函數
- 正則表達式
- PHP字符串函數
- 抓取實戰
- PHP接口
- 了解接口
- PHP插件
- PHPSpreadsheet
- ThinkPHP6
- 安裝
- 架構
- 數據庫
- 數據庫操作
- 視圖
- 模版
- 模型
- 雜項
- 命令行
- 交互
- 微信小程序
- 介紹
- 配置
- 組件
- 交互
- API
- 其他知識
- 百度小程序
- 介紹
- 配置
- 組件
- 交互
- API
- 其他知識
- Linux
- 服務器上線流程
- 安裝svn
- MySQL
- 認識MySQL
- MySQL函數
- 雜項
- composer依賴管理工具