# 字符串操作
[TOC]
## 字符串長度
1個字節就是8個bit位,1kb=1024b,1mb=1024kb,1gb=2014mb,一個英文字符串占1個字節空間,gbk編碼中1個中文占2個字節,utf8編碼1個中文占3個字節,他們二個不同編碼所占的字節數不同!
| 函數 | 作用 |
| :-: | :-: |
| strlen | 獲取字符串長度以字節為單位 |
| mb\_strlen | 獲取字符串長度以字符為單位 |
>[success] 他們二個都是獲取字符串長度的函數,那么他們有什么區別存在呢?strlen獲取字符串長度以字節為單位,而mb\_strlen獲取字符串以字符為單位!mb\_strlen支持必須在PHP.ini當中開啟`extension=mbstring支持`

## 字符串去除
| 函數 | 作用 |
| :-: | :-: |
| trim | 去除字符串首尾的空白符或其他字符 |
| ltrim | 去除字符串開頭的空白符或其他字符 |
| rtrim | 去除字符串結尾的空白符或其他字符 |

## 字符串重復
| 函數 | 作用 |
| :-: | :-: |
| str\_repeat | 把字符串重復指定的次數 |

## 字符串分割
| 函數 | 作用 |
| :-: | :-: |
| implode | 將一個一維數組轉換為字符串 |
| explode | 將一個字符串轉換為數組 |

## 字符串截取
| 函數 | 作用 |
| :-: | :-: |
| substr | 截取字符串,中文亂碼 |
| mb\_substr | 截取字符串,中文不會亂碼,推薦使用 |

## 字符串替換
| 函數 | 作用 |
| :-: | :-: |
| str\_replace | 字符串替換 |
| strtr | 字符串替換 |

## 特殊字符串處理
>[success] 用于簡單防止SQL注入
| 函數 | 作用 |
| :-: | :-: |
| addslashes | 給字符串中的特殊字符添加轉義符 |
| stripslashes | 去除字符串當中的特殊字符串轉義符 |

- 基礎
- 安裝PHP
- 語言基礎
- 變量
- 變量操作
- 超全局數組變量
- 變量作用域
- 變量傳值方式
- 常量
- 數據類型
- 運算符
- 流程控制
- 文件包含
- 錯誤處理
- 字符串操作
- 數組
- 函數
- 進階
- 面向對象
- 提高
- TP
- 安裝項目
- 框架基礎知識
- 命令創建模塊
- URL生命周期
- 路由操作
- Request請求類
- 參數綁定
- 依賴注入
- 模板操作
- 查詢操作
- 添加操作
- laravel
- ☆目錄結構
- CSRF攻擊
- ☆路由
- ☆控制器
- ☆請求類
- ☆視圖
- ☆模板繼承
- ☆表單驗證
- ☆DB類
- ☆模型
- ☆數據庫遷移
- 類型、修飾、索引
- ☆數據填充
- ☆數據分頁
- ☆session處理
- ☆中間件
- ☆緩存操作
- ☆文件上傳
- ☆接口操作
- ☆擴展插件
- restful
- 工作
- 工作記錄
- QQ登錄
- 新浪登錄
- 微信登錄
- sphinx搜索
- 數據庫
- MySQL
- ☆數據庫操作
- ☆數據表操作
- ☆數據的操作
- 待修改
- 優化
- 存儲引擎選擇
- 列表類型選擇
- 范式
- 慢日志查詢
- 精準時間記錄查詢
- 計劃任務 explain
- 索引
- 索與事務
- 查詢緩存
- 存儲過程
- 觸發器
- 分區
- 分表
- sphinx
- 讀寫分離
- 搜索優化
- 網站靜態化
- Memcache
- Mongodb
- Readis
- php使用redis
- 服務器
- Linux
- 目錄結構
- 常用命令
- VIM編輯器
- 用戶與用戶組
- 權限管理
- 運行級別
- 網絡模式
- ssh
- 軟件安裝
- 計劃任務
- Ubuntu
- 編譯PHP7.3
- 編譯MySQL
- 編譯Nginx
- apache虛擬機配置
- 安裝composer
- Nginx
- Git