字符串处理
最后更新于:2022-04-02 04:29:39
### 常用字符串处理函数
- 字符串截取函数
- 字符串匹配函数
- 字符串替换函数
- 字符串比对函数
- 字符串转换函数
- 其他函数
### 编码/转换/序列化函数
### 替换/转义/安全相关函数
### 加密/解密/安全相关函数
### url安全编码/转换/解析相关函数
- `parse_str`
注意URL编码/解码还需要考虑字符编码,其实字符串处理函数,有的是都有一个字符编码参数,请注意这一点。
参考:
[UrlEncode编码/解码](http://tool.chinaz.com/tools/urlencode.aspx)
## 常用最佳实践
- 论坛UBB转换
- 常用正则表达式
- 字符串安全过滤
- 语法解析
- thinkPHP [\think\Loader\parseName()](https://github.com/top-think/framework/blob/master/library/think/Loader.php#L499) 的字符串C和Java风格转换的例子
- HTMLPurifier库 (白名单机制安全过滤库)
>[danger] 上面一些函数可能用到了正则表达式相关的函数
### 总结
php处理字符串时需要注意的一些问题,比如要考虑编码,了解[编码知识](https://www.zhihu.com/question/23374078),了解php一些历史问题的字符串相关函数,在处理中文和其它双字节,多字节字符时要考虑的一些问题。
### 扩展
php字符串处理的一些历史原因,与其他语言例如JS,Java处理字符串有何异同,比如php的字符串其实可以当索引数组使用的。
还要考虑php的一些历史原因,`php.ini`,`magic_quotes_runtime`,`get_magic_quotes_gpc`
* * * * *
[PHP 高级面试题 - 如果没有 mb 系列函数,如何切割多字节字符串](https://mp.weixin.qq.com/s/pHgCYYeCkcqFsm9XGtLLMg)
[UTF-8为什么会比UTF-16浪费? - 日新亭 - SegmentFault](https://segmentfault.com/a/1190000012692022)
[字符编码笔记:ASCII,Unicode 和 UTF-8 - 阮一峰的网络日志](http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html)
';