字符串结构里存储了长度,根据长度来判断字符串的结束,而不是根据特殊的结束符字节
所以php字符串是二进制安全的,可以包含null字节
$name="zhangsan"; echo "{$name}p"或"${name}p" // zhangsanp 花括号{}里不要有空格
echo $name{1}; //h 得到字符串的第1个字符 方括号[]也可以
$name{1}=‘t‘; echo $name; //"ztangsan"
$name[100]=‘z‘; //中间部分都是空格 zhangsan _ _ _ z
hereDoc 不加引号或加双引号 <<<abc <<<"abc" 效果同双引号字符串
nowDoc 加单引号 <<<‘abc‘ 效果同单引号字符串
$str = <<<AAA
sadlfjsk
AAA;
数组转换
explode — 使用一个字符串分割另一个字符串
implode — 将一个一维数组的值转化为字符串
join — 别名 implode
str_split — 将字符串转换为数组
str_getcsv — 解析 CSV 字符串为一个数组
查找
strpos — 查找字符串首次出现的位置
strrpos — 计算指定字符串在目标字符串中最后一次出现的位置
strstr — 返回字符串的首次出现到末尾
strchr — 别名 strstr
stripos — 查找字符串首次出现的位置(不区分大小写)
strripos — 计算指定字符串在目标字符串中最后一次出现的位置(不区分大小写)
stristr — strstr 函数的忽略大小写版本
strpbrk — 在字符串中查找一组字符的任何一个字符
strrchr — 查找指定字符在字符串中的最后一次出现
子串
substr — 返回字符串的子串
substr_replace — 单个子字符串替换
str_replace — 批量子字符串替换
str_ireplace — str_replace 的忽略大小写版本
wordwrap — 打断字符串为指定数量的字串
比较
strcmp — 二进制安全字符串比较
strncmp — 二进制安全比较字符串开头的若干个字符
strnatcmp — 使用自然排序算法比较字符串
strcasecmp — 二进制安全比较字符串(不区分大小写)
strncasecmp — 二进制安全比较字符串开头的若干个字符(不区分大小写)
strnatcasecmp — 使用“自然顺序”算法比较字符串(不区分大小写)
substr_compare — 二进制安全比较字符串(从偏移位置比较指定长度)
strcoll — 基于区域设置的字符串比较
Trim
trim — 去除字符串首尾处的空白字符(或者其他字符)
ltrim — 删除字符串开头的空白字符(或其他字符)
rtrim — 删除字符串末端的空白字符(或者其他字符)
chop — rtrim 的别名
计数
strlen — 获取字符串长度
strcspn — 获取不匹配遮罩的起始子字符串的长度
strspn — 计算字符串中全部字符都存在于指定字符集合中的第一段子串的长度。
str_word_count — 返回字符串中单词的使用情况
substr_count — 计算字串出现的次数
大小写
strtolower — 将字符串转化为小写
strtoupper — 将字符串转化为大写
lcfirst — 使一个字符串的第一个字符小写
ucfirst — 将字符串的首字母转换为大写
ucwords — 将字符串中每个单词的首字母转换为大写
散列
crc32 — 计算一个字符串的 crc32 多项式
crypt — 单向字符串散列
md5 — 计算字符串的 MD5 散列值
md5_file — 计算指定文件的 MD5 散列值
sha1 — 计算字符串的 sha1 散列值
sha1_file — 计算文件的 sha1 散列值
Print、格式化
echo — 输出一个或多个字符串
print — 输出字符串
sscanf — 根据指定格式解析输入的字符
printf — 输出格式化字符串
fprintf — 将格式化后的字符串写入到流
sprintf — Return a formatted string
vprintf — 输出格式化字符串
vfprintf — 将格式化字符串写入流
vsprintf — 返回格式化字符串
money_format — 将数字格式化成货币字符串
number_format — 以千位分隔符方式格式化一个数字
编码、转义
addcslashes — 以 C 语言风格使用反斜线转义字符串中的字符
addslashes — 使用反斜线引用字符串
stripcslashes — 反引用一个使用 addcslashes 转义的字符串
stripslashes — 反引用一个引用字符串
htmlentities — 将字符转换为 HTML 转义字符
html_entity_decode — Convert HTML entities to their corresponding characters
htmlspecialchars_decode — 将特殊的 HTML 实体转换回普通字符
htmlspecialchars — 将特殊字符转换为 HTML 实体
get_html_translation_table — 返回使用 htmlspecialchars 和 htmlentities 后的转换表
nl2br — 在字符串所有新行之前插入 HTML 换行标记
strip_tags — 从字符串中去除 HTML 和 PHP 标记
quotemeta — 转义元字符集
strtr — 转换指定字符
str_rot13 — 对字符串执行 ROT13 转换
convert_uudecode — 解码一个 uuencode 编码的字符串
convert_uuencode — 使用 uuencode 编码一个字符串
正则 PCRE
preg_filter — 执行一个正则表达式搜索和替换
preg_grep — 返回匹配模式的数组条目
preg_split — 通过一个正则表达式分隔字符串
preg_match — 执行匹配正则表达式
preg_match_all — 执行一个全局正则表达式匹配
preg_replace_callback_array — 搜索并用一组回调函数进行替换
preg_replace_callback — 搜索并用一个回调进行替换
preg_replace — 执行一个正则表达式的搜索和替换
preg_quote — 转义正则表达式字符
preg_last_error — 返回最后一个PCRE正则执行产生的错误代码
正则 POSIX
ereg_replace — 正则表达式替换
ereg — 正则表达式匹配
eregi_replace — 不区分大小写的正则表达式替换
eregi — 不区分大小写的正则表达式匹配
split — 用正则表达式将字符串分割到数组中
spliti — 用正则表达式不区分大小写将字符串分割到数组中
sql_regcase — 产生用于不区分大小的匹配的正则表达式
其他
ord — 转换字符串第一个字节为 0-255 之间的值 字符 -> ASCII码
chr — 返回指定的字符 ASCII码 -> 字符
strrev — 反转字符串
str_shuffle — 随机打乱一个字符串
str_pad — 使用另一个字符串填充字符串为指定长度
str_repeat — 重复一个字符串
parse_str — 将字符串解析成多个变量
strtok — 标记分割字符串
bin2hex — 函数把包含数据的二进制字符串转换为十六进制值
hex2bin — 转换十六进制字符串为二进制字符串
quoted_printable_decode — 将 quoted-printable 字符串转换为 8-bit 字符串
quoted_printable_encode — 将 8-bit 字符串转换成 quoted-printable 字符串
hebrev — 将逻辑顺序希伯来文转换为视觉顺序希伯来文
hebrevc — 将逻辑顺序希伯来文转换为视觉顺序希伯来文,并且转换换行符
chunk_split — 将字符串分割成小块
convert_cyr_string — 将字符由一种 Cyrillic 字符转换成另一种
count_chars — 返回字符串所用字符的信息
levenshtein — 计算两个字符串之间的编辑距离
similar_text — 计算两个字符串的相似度
localeconv — Get numeric formatting information
metaphone — Calculate the metaphone key of a string
nl_langinfo — Query language and locale information
setlocale — 设置地区信息
soundex — Calculate the soundex key of a string